2011-09-27 14 views
5

Estoy buscando deshabilitar jsessionid para que no se use en los encabezados https. ¿Hay alguna forma de desactivarlo o desactivarlo como cookie en tomcat 7?Deshabilitar jsessionid a través del encabezado http (cookie) en Tomcat 7

O deseo que el jsessionid llegue incrustado en un valor GET del nombre del nombre pares de valores o que sea parte de un POST request name name pairs.

Conozco todas las ventajas y desventajas del uso de sesiones basadas en cookies y la reescritura de URL, pero tengo necesidades específicas para la implementación específica de servicios web relajantes.

Necesito Tomcat 7 para aceptar jsessionid sin usar el encabezado http: jsessionid.

Gracias.

ACTUALIZACIÓN:

así que miraron a su alrededor un poco más y encontró this el que se implementa utilizando el conf web.xml.
Sin embargo, no parece lo siguiente para trabajar con Tomcat 7.

<session-config> 
    <tracking-mode>URL</tracking-mode> 
</session-config> 

se trata de un caso de TC7 no cumplir plenamente con la especificación servlet 3.0?

Respuesta

4

El ajuste web.xml funciona para mí con Tomcat 7.0.20.

Entrar y comprobar los modos de seguimiento eficaz (y tal vez el defecto de sesión):

logger.info("default STM: {}" , servletContext.getDefaultSessionTrackingModes()); 
logger.info("effective STM: {}" , servletContext.getEffectiveSessionTrackingModes()); 

Tal vez su aplicación anulan en alguna parte del código de los modos de seguimiento de sesión. Un ejemplo:

final Set<SessionTrackingMode> trackingModes = 
    Collections.singleton(SessionTrackingMode.COOKIE); 
servletContext.setSessionTrackingModes(trackingModes); 

Compruebe ServletContext.setSessionTrackingModes() llamadas en su código.

También es posible to set default session tracking modes in the Tomcat's context settings pero encontré que las configuraciones web.xml las anulan.

Cuestiones relacionadas