java - Tomcat 随机使 Session 失效

标签 java session tomcat

如果强制重新登录,我的 tomcat 应用程序会随机使 session 信息和用户无效。只有当 webapp 与其他特定的 web 应用程序一起部署时才会发生这种情况。当它自己运行而没有其他应用程序运行时,它工作正常。某处有冲突,但我找不到它。

有问题的 webapp 同时使用了 Spring 和 Hibernate 框架。其他网络应用程序也是如此。这是发生的情况的示例。

当我第一次登录时,一切正常。

JSESSIONID Matches

JSESSONID 在 cookie 和管理控制台中都匹配。但是,在使用该应用程序时,它会随机终止 session 。

Session gone in Tomcat Console

当我发出另一个 Web 请求时,会显示登录页面并生成一个新的 JSESSIONID。

根据我所做的研究,只要调用 JSP 文件并且没有当前 session ,就会生成 JSESSIONID。我不明白为什么 session 会失效,但只有当它与其他应用程序一起运行时才会失效。我已经检查了内存使用情况,但我没有注意到内存下降与无效 session 之间的相关性。我想这意味着 Tomcat 不会通过清除 session 来释放内存。

非常感谢任何帮助

最佳答案

检查 session.setMaxInactiveInterval() 是否未在其他 Web 应用程序中以编程方式配置。这会引发您描述的行为。

此方法与您在 web.xml 文件中找到的 session 超时值略有不同。 ( Here's a good rundown .)

关于java - Tomcat 随机使 Session 失效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23690405/

相关文章:

java - Hibernate 动态实例化集合,可能吗?

java - 将 Activity 监听器添加到 AbstractDecolatedTextEditor

java - Java中的static关键字

python - 如何从 Flask-KVSession 中删除特定 key (针对当前 session )?

node.js - Node ,express.session 作为中间件不设置 cookie

jakarta-ee - Maven tomcat7-maven-plugin 找不到错误

java - 如何查询用户输入?

session - ActiveMQ session 的AUTO_ACKNOWLEDGE属性影响

tomcat 配置问题 sever.xml

java - 在 Tomcat 上成功部署我的项目,但无法请求。显示 404