HttpSessionBindingListener和HttpSessionListener

时间:2013-05-16 06:25:21

标签: java java-ee

我正在使用HttpSessionListener的sessionDestroyed()方法来获取当前会话对象,但是在执行sessionDestroyed()之前会话已经被破坏是不可能的。然后我尝试使用HttpSessionBindingListener的valueUnbound()获得相同但仍然无法获取当前会话对象。如果我想要这个对象,如何实现它。

1 个答案:

答案 0 :(得分:1)

您使用的是什么servlet版本? 2.3?如果是servlet 2.4的第21页的情况 规范有一个关于与servlet版本2.3的兼容性的说明:

“SRV.1.6.1 HttpSessionListener.sessionDestroyed 在规范的先前版本中,此方法定义为: 会话失效的通知。 从版本2.4开始,此方法更改为: 以便在会话失效之前通知。如果代码假定先前的行为,则必须修改它以匹配新行为。“

在这种情况下,尝试将web.xml中的声明更改为版本2.4+并检查您的库您可以在规范serlvet 2.3和2.4中查看更多详细信息