【发布时间】:2011-08-02 20:28:11
【问题描述】:
如何为 Jboss 服务器中的多个 Web 应用程序维护相同的会话 ID?
【问题讨论】:
标签: java web-applications jboss
如何为 Jboss 服务器中的多个 Web 应用程序维护相同的会话 ID?
【问题讨论】:
标签: java web-applications jboss
看看这篇文章,类似的问题。 Access session of another web application
这是在说什么
“不是直接的。大多数容器将每个 WAR 放在一个单独的类加载器中,EAR 类加载器作为它们的父类。每个应用程序的会话都是独立的。您可以在每个会话中放置父 EAR 提供的内容。如果您需要它们共享某些内容, 使其成为 EAR 函数。”
因此,由于每个会话都是私密的,一个网络应用程序无法看到另一个。因此,您的选择是将两个 Web 应用程序捆绑在一个 WAR 文件中,以使它们能够共享会话数据。
【讨论】:
我最近正在寻找这个并找到了解决方案。
如果只是想共享ID,可以在web.xml中使用如下配置。假设您使用 servlet 3.0。
<session-config>
<cookie-config>
<path>/</path>
</cookie-config>
</session-config>
这将使用路径“/”保存 jsessionid cookie,使其在所有 webapps 之间共享。这就是 JBoss 4 过去的做法。
【讨论】: