我有一个有趣的问题。我在一个基于servlet的web项目上工作,使用会话。当我在我的开发机器和它的本地tomcat服务器上工作时,会话就好了。属性在一个请求中添加,在另一个请求中使用没有任何问题。过了一会儿,我在远程机器上部署了网站,会话管理被破坏了。
正如我所观察到的,tomcat为每个请求触发sessionCreated事件并给出相同的id。我使用chrome的开发工具来检查标题,浏览器似乎很好地发送会话ID。由于tomcat会更新会话,因此会丢失属性。
BTW:应用程序在子域名下运行,例如webproject.example.com
context.xml的内容非常基本
<Context antiJARLocking="true" path="" sessionCookiePath="/"/>
我在这里缺少什么?
由于
答案 0 :(得分:0)
确保在客户端的浏览器上启用了Cookie。如果不是,则不提供可以检索会话的持久标识符。在这种情况下,request.getSession()
将为每个请求创建一个新会话。