java - 对多个应用程序使用同一个 session

标签 java session struts2

我开发了一个带有登录功能的struts2应用程序。我的java代码是

        Map session = ActionContext.getContext().getSession();
        session.put("login", "true");
        session.put("user", username);

我将检查用户是否已经以

身份登录 jsp
<s:if test="#session.login != 'true'"> 

现在我想开发另一个应用程序。由于用户是相同的,我不想要求他们再次登录。

我想在application2中访问application1的 session 。这个怎么做。请帮忙。

最佳答案

如果您的应用程序托管在同一个 tomcat 实例上,则可以使用跨上下文功能。

在 server.xml 中添加以下行

<Context path="/<path>" crossContext="true">

然后您可以像这样访问应用程序共享的上下文:

getContext("yourApp").getAttribute("AttrName");

类似的问题很少...

What does the crossContext attribute do in Tomcat? Does it enable session sharing?

Sharing Session object between different web applications

关于java - 对多个应用程序使用同一个 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25260763/

相关文章:

java - 如何检测 libGdx 中的文本点击

php - 数组在 PHP session 中不完整

java - Jsp 上的 Struts2-菜单

java - 当任何人达到 100 时,骰子游戏不会停止。我的代码有什么问题吗?

java - 通过java代码编译android .apk

mongodb - Sitecore 8.1 错误 : "No session Id managers were found to manage the session Id for the current request"

java - 在 junit 类中有辅助方法

java - Struts 2 中的多表单执行

java - 如何解决XML转换问题?

java - 为什么按钮没有添加到场景中?