Apache Tomcat 7 cambiando JSESSIONID en cada solicitud

Este problema me está volviendo loco, así que quizás alguien pueda ayudarme a entender cuál es el problema. Tengo una aplicación web de Tomcat liderada por HAProxy. HAProxy también está haciendo la descarga de SSL, y está configurado para usar sesiones pegajosas. Estoy usando la función de replicación de sesión de Tomcat que parece estar funcionando bien. Las sesiones aparecen en ambos servidores de aplicaciones.

Por alguna razón, Tomcat está generando un nuevo JSESSIONID para cada solicitud web y luego está copiando el contenido de la sesión anterior en la nueva sesión. Es decir, los contenidos de mi sesión todavía están allí dentro de la nueva sesión, pero se genera una nueva ID y se envía de vuelta al cliente. Pero solo hace esto para mi aplicación web. No hace esto para la aplicación / manager.

He intentado todos los trucos del libro, como establecer esto en mi context.xml:

<Valve className="org.apache.catalina.authenticator.BasicAuthenticator" changeSessionIdOnAuthentication="false" />

Y estableciendo estos atributos en mi elemento de contexto:

<Context path="/myapp" reloadable="false" override="true" useNaming="false" allowLinking="true" useHttpOnly="false" sessionCookiePath="/" sessionCookiePathUsesTrailingSlash="false">

Y aún así, el resultado es el mismo. Tomcat genera un nuevo ID de sesión con cada solicitud y copia los contenidos de la sesión anterior en el nuevo ID.

Sospecho que tuvo algo que ver con HAProxy, excepto que la aplicación / manager también está detrás de HAProxy y no presenta este comportamiento.

¿Por qué está haciendo esto Tomcat y qué puedo hacer para evitarlo?

Respuestas a la pregunta(3)

Su respuesta a la pregunta