es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Compartir los datos de las sesiones entre diferentes aplicaciones usando httpSessionCache y HazelCast en OpenLiberty.

El uso de la función sessionCache-1.0 de OpenLiberty con HazelCast te permite persistir y compartir datos de sesión en un clúster en memoria de HazelCast, como se explica aquí: https://openliberty.io/guides/sessions.html.

Sin embargo, en esta configuración los datos de sesión son almacenados internamente en los mapas de nombre: com.ibm.ws.session.attr.[app-context-root] y com.ibm.ws.session.meta.[app-context-root], como se indica aquí (aunque no veo que los documentos de OpenLiberty especifiquen claramente esto).

Esto impide que diferentes aplicaciones (con diferentes raíces de contexto) compartan datos de sesión, ya que están escribiendo y leyendo datos de sesión de diferentes mapas.

¿Existe alguna forma de sobrescribir este nombre para permitir que las aplicaciones con diferentes raíces de contexto escriban y lean desde el mismo mapa para compartir datos de sesión?

Estuve revisando las propiedades de httpSession y httpSessionCache en los documentos de OpenLiberty, pero no encontré ningún atributo que soporte esta funcionalidad.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, es posible sobrescribir el nombre del mapa utilizado para almacenar los datos de sesión. Puede hacer esto configurando la propiedad mapName en la característica httpSessionCache-1.0. Por ejemplo:

    <feature>httpSessionCache-1.0</feature>
    <httpsessioncache mapname="miNombreDeMapa"></httpsessioncache>
    

    Esto hará que todas las aplicaciones utilicen el mismo nombre de mapa, miNombreDeMapa, para almacenar los datos de sesión.

Comments are closed.