调用session.invalidate()后,Tomcat不会使会话失效

时间:2013-01-16 23:56:28

标签: web-services session tomcat invalidation

我在jaxws中有一个web服务,我可以在登录后连接到该服务。一切正常,我传递登录名和密码,我登录了,我正在WS服务器上为这个用户创建会话。毕竟我想要注销,所以我删除所有会话属性,并调用session.invalidate()。

删除了属性,但是当我进入tomcat管理器时,我发现会话仍在那里。

当我登录时,会话已将setMaxInactiveInterval设置为7200秒(2小时)。会话将在此时间之后被销毁,但如果该会话不再使用,那么将空会话保持活动2小时是有意义的。

有没有办法彻底销毁该会话?没等2个小时?

1 个答案:

答案 0 :(得分:0)

在您的回复中尝试这些

response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); 
response.setHeader("Pragma", "no-cache"); 
response.setDateHeader("Expires", 0);

确保子请求不应重新实例化您的会话。