Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何记录tomcat会话失效或用户注销_Java_Session_Tomcat_Logging_Spring Security - Fatal编程技术网

Java 如何记录tomcat会话失效或用户注销

Java 如何记录tomcat会话失效或用户注销,java,session,tomcat,logging,spring-security,Java,Session,Tomcat,Logging,Spring Security,当Tomcat7使会话无效,或者用户由于会话过期或会话错误而从应用程序注销时,我如何记录这种情况。例如,用户登录到webapp,获取他的jsessionid并将其保存到浏览器cookie中,然后我通过tomcat管理器手动使会话无效或从cookie中删除jsessionid。这两种情况都会导致用户注销,但我认为这种行为会处理tomcat本身,因此,我必须在tomcat中的某个地方捕获这种调用。我该怎么做 我之所以需要它,是因为会话的随机失效问题,这可能是由于坏集群(我们有两个节点具有粘性会话)或

当Tomcat7使会话无效,或者用户由于会话过期或会话错误而从应用程序注销时,我如何记录这种情况。例如,用户登录到webapp,获取他的jsessionid并将其保存到浏览器cookie中,然后我通过tomcat管理器手动使会话无效或从cookie中删除jsessionid。这两种情况都会导致用户注销,但我认为这种行为会处理tomcat本身,因此,我必须在tomcat中的某个地方捕获这种调用。我该怎么做

我之所以需要它,是因为会话的随机失效问题,这可能是由于坏集群(我们有两个节点具有粘性会话)或garbagge collector破坏了我们的会话,但它可能会破坏其他任何东西,所以我需要一些更广泛的上下文

我使用Tomcat7、Java1.7、JSF1.2和SpringSecurity3


谢谢

您必须实现HttpSessionListener,将日志代码放在sessionDestroyed方法上,并将其注册到web.xml文件中

下面是一个例子:


这有一个监听器。请注意,这个示例有点过时了,现在可以通过注释来完成。不需要任何
web.xml