会话超时 Oracle ATG Jboss EAP 7.0

Session Timeout Oracle ATG Jboss EAP 7.0

我在 JBoss EAP 7.0

中遇到 Oracle ATG(版本 11.3)应用程序 运行 的会话超时问题

当我检查 JBoss 管理控制台时,我可以看到会话数正确反映了 before/after 会话超时,但在 ATG 端没有(我已经检查了来自 ATG 组件的会话数dyn/admin)

所以我实现了自定义 Http 侦听器,发现即使 ATG 无限期地持有会话,侦听器也会正确接收创建和销毁的会话。

ATG 开箱即用地实现了 HttpSessionBindingListener 和 add/removes 会话及其关于 valueBound 和 valueUnbound 事件的详细信息,我已经检查这些组件是否正确接收了事件,除了未绑定和绑定的事件源不同。由于绑定和未绑定源不同的代码无法识别未绑定事件,因此无法删除会话。

绑定源事件:- javax.servlet.http.HttpSessionBindingEvent[来源=io.undertow.servlet.spec.HttpSessionImpl@efcf8fb8]

未绑定源事件:- javax.servlet.http.HttpSessionBindingEvent[来源=org.wildfly.clustering.web.session.ImmutableHttpSessionAdapter@5986130b]

JBOSS EAP 7.0 上的 ATG 11.3 运行 存在会话泄漏。有一个补丁 27507725。可以下载它来解决这个问题(您必须从 Oracle 请求访问这个补丁)