IBM WebSphere Portal 8.5: Asistencia al usuario para administradores

Comunicación entre portlets del puente de aplicaciones web

Web Application Bridge da soporte al envío de sucesos desde el lado del cliente y el lado del servidor. El portlet Acoplamiento web puede enviar y recibir eventos de otros portlets de la misma página. Utiliza una técnica de cliente que se basa en OpenAjax. Con sucesos de cliente, no es necesaria una renovación de la página. El portlet Acoplamiento web también puede enviar eventos a otros portlets. Utiliza una técnica de servidor que se basa en el soporte de eventos JSR 286. Con eventos de servidor, es necesario actualizar la página por completo.

Restricciones: No configure la misma aplicación de acoplamiento web para publicar y suscribirse en la misma cola, al mismo tiempo. Además, si tiene varias aplicaciones de acoplamiento web en una página, estará inhabilitada la característica de comunicación entre portlets.

En el cliente: portlet Acoplamiento web como aplicación de publicación

El método de eventos de cliente utiliza el método OpenAjax.hub.publish(name, publisherData). El parámetro name es el tema en el que se publica el suceso. El parámetro publisherData son los datos que se pasan como un argumento a la función handler, que maneja este suceso.

Para permitir que el portlet Acoplamiento web publique un suceso de cliente, establezca Publicar suceso del lado del cliente en . El portlet Acoplamiento web siempre envía el elemento de origen en forma de un nodo DOM (modelo de objetos de documento) como los publisherData. El elemento fuente es el elemento en el que el usuario ha realizado alguna acción que ha dado lugar a la publicación del evento. El tipo de preferencia de elemento fuente de evento se utiliza para especificar los elementos que pueden dar lugar a la publicación de un evento. La opción Tipo de evento capturado especifica el tipo de eventos que deben capturarse desde el iFrame del portlet Acoplamiento web. Ambos sucesos o elementos pueden seleccionarse en la lista o escribirse como lista separada por comas. Los eventos que se capturan desde iFrame son los únicos que dan lugar a la publicación de un evento. De forma predeterminada, el portlet Acoplamiento web se publicará en el tema global, que es com.ibm.vwat.event. Sin embargo, utilice Publicar tema de evento para publicar en otro tema. El valor de Publicar tema de evento se añade a "com.ibm.vwat.event" para formar el nuevo tema. Por ejemplo, si Publicar tema de evento se establece en "myTopic.subTopic1.subTopic2", el evento se publica en "com.ibm.vwat.event.myTopic.subTopic1.subTopic2".

En el cliente: portlet Acoplamiento web como suscriptor

Con este método de cliente, debe suscribirse a un tema con el método OpenAjax.hub.subscribe(name, refOrName).

Para permitir que el portlet Acoplamiento web se suscriba a un evento, establezca Suscribir evento de cliente en . De forma predeterminada, el portlet Acoplamiento web se suscribe al tema global "com.ibm.vwat.event". Sin embargo, utilice Suscribir tema de evento para suscribirse a un tema distinto. El portlet Acoplamiento web siempre espera un URL o un fragmento de URL como publisherData. publisherData establece el atributo src del iFrame del portlet Acoplamiento web. Este atributo se utiliza para mostrar contenido del nuevo URL en el portlet Acoplamiento web. Sin embargo, la preferencia de plantilla de URL puede utilizarse para añadir un prefijo a publisherData. Por ejemplo, si la plantilla de URL se establece en http://www.abc.com y publisherData es /xyz, el valor que se utiliza para establecer el atributo src del iFrame es http://www.abc.com/xyz.

El valor devuelto de processSubscribedEvent se utiliza como URL para el portlet Acoplamiento web de suscriptor.

En el servidor: portlet Acoplamiento web como suscriptor

Para suscribir el portlet Acoplamiento web a un evento, cree una conexión desde el portlet fuente al portlet Acoplamiento web con la Herramienta de conexión de portlets. El portlet Acoplamiento web puede suscribirse a los tres eventos siguientes:
  • ss_subscriber_reset: restablece el portlet Acoplamiento web de modo que el iFrame apunte a la ubicación inicial indicada en Editar valores compartidos. Definición del evento:
    <event-definition>
    	  	<qname>vwat:ss_subscriber_reset</qname> 
    	  	<alias>xsd:string</alias>
    	  	<value-type>java.lang.String</value-type>
    </event-definition>
  • ss_subscriber_set: establece el URL iFrame del portlet Acoplamiento web en función del valor recibido del suceso. Definición del suceso:
    <event-definition>
    	  	<qname>vwat:ss_subscriber_set</qname> 
    	  	<alias>xsd:string</alias>
    	  	<value-type>java.lang.String</value-type>
    </event-definition>
  • ss_subscriber_append: establece el URL del iFrame del portlet Acoplamiento web después de añadir el valor recibido del evento a la plantilla de URL. Definición del suceso:
    <event-definition>
    	  	<qname>vwat:ss_subscriber_append</qname> 
    	  	<alias>xsd:string</alias>
    	  	<value-type>java.lang.String</value-type>
    </event-definition>

En el servidor: portlet Acoplamiento web como aplicación de publicación

Puede habilitar el portlet Acoplamiento web para publicar un evento de servidor. Establezca Publicar evento de servidor en . Cree una conexión desde el portlet Acoplamiento web a algún portlet de destino con la Herramienta de conexión de portlets. El portlet Acoplamiento web publica una serie JSON que contiene las propiedades de ID y valor del elemento fuente. Por ejemplo, si el valor de tipo de elemento fuente de evento es a, el valor es la propiedad HREF del elemento. El elemento fuente del evento es el elemento en el que el usuario ha realizado alguna acción. Esta acción da lugar a la publicación del evento. La opción Tipo de evento capturado se utiliza para especificar el tipo de eventos; por ejemplo, onclick, onchange. Ambos sucesos o elementos pueden seleccionarse en la lista o escribirse como lista separada por comas. Este evento debe capturarse desde el iFrame del portlet Acoplamiento web. Los eventos que se capturan desde el iFrame del portlet Acoplamiento web son los únicos que dan lugar a la publicación de un evento.

La opción Plantilla de URL es un prefijo que se añade al elemento fuente del evento.