WebSphere Everyplace Access

Desarrollo de portlets para contenido fuera de línea


Visión general

Everyplace Access incluye soporte para navegación de Portal en modalidad fuera de línea. El desarrollo de portlets que se utilizarán fuera de línea puede llevarse a cabo en el mismo entorno y con las mismas herramientas con las que se desarrollan los portlets en línea. Sin embargo, hay unas consideraciones exclusivas a tener en cuenta para el desarrollo de contenido fuera de línea. Al desarrollar portlets para un posible uso fuera de línea, debe estar familiarizado con el funcionamiento de la tecnología.

Cuando el cliente sincroniza con Portal Server para obtener las páginas actuales fuera de línea, un servlet, WebCache, hace de intermediario para todas las transacciones individuales de solicitud/respuesta de páginas. Este servlet vuelve a grabar cada página antes de volver a enviarla al cliente. Esto permite al cliente almacenar en antememoria la página en el dispositivo. Cuando el usuario pulsa un enlace dentro del portlet, la página solicitada se obtiene de la antememoria en lugar de obtenerla del servidor. El servlet efectúa esta acción para cada portlet en la página fuera de línea del usuario. Para cada portlet fuera de línea, el servlet accede en forma programada a cada enlace en ese portlet hasta que se alcanza la profundidad de enlace. El servlet vuelve a grabar cada enlace y página de enlace. Este proceso repetitivo continúa hasta que se alcanza la profundidad de enlace definida.

Un administrador define la profundidad de enlace por omisión en el portlet Administración de la navegación fuera de línea. Pero cada usuario puede definir una profundidad de enlace personalizada utilizando la Configuración de la navegación fuera de línea.

Directrices de desarrollo para contenido fuera de línea

Con esto en mente, hay que seguir unas directrices al crear portlets para su uso fuera de línea.

No utilizar PortletActions

En Portal Server se implementan PortletActions utilizando un proceso del lado del servidor. Cuando el usuario está navegando por estas páginas fuera de línea, este proceso no se puede completar en tiempo real, por lo que el enlace resultante puede que no sea válido. En su lugar, donde se realizó la toma de decisiones según el estado con PortletActions, guarde ahora esta variable de estado en el objeto petición/respuesta y haga que la lógica de negocio produzca decisiones internamente según el valor de este parámetro.

Habilitar marcación PDA

La marcación "PDA" debe estar soportada de forma explícita. Cuando el cliente se conecta al servlet, éste solicita al portal todos los portlets fuera de línea para un usuario dado. El portal responde invocando el intermediario fuera de línea para que recopile todos los portlets con capacidad fuera de línea. Para que un portlet pueda verse mientras está fuera de línea, debe existir en la página fuera de línea y debe soportar la marcación PDA. Debe actualizar el archivo portlet.xml para habilitar el soporte de marcación PDA. Este proceso se detalla en Extender las mejoras de visualización de dispositivo.

Evitar los botones de acciones

Cuando un cliente fuera de línea sincroniza para obtener las páginas fuera de línea actuales, atraviesa todos los enlaces hasta que se alcanza la profundidad de enlace. Por tanto, si el portlet tiene una lista de elementos, y al lado de cada elemento hay un botón que suprime ese elemento específico, cada vez que el servlet fuera de línea procese la página se eliminarán todos los elementos. En lugar de eso, si es preciso que aparezca esta opción de supresión, ponga los elementos en un formulario con recuadros de selección al lado de cada uno y, a continuación, utilice los formularios fuera de línea para suprimir elementos de esta manera.

Formularios fuera de línea

Cuando desarrolle formularios para su entrega fuera de línea, tenga presente los siguientes dos puntos.


Información relacionada