gpt4 book ai didi

tomcat - 将tomcat session 超时与已部署的应用程序同步

转载 作者:行者123 更新时间:2023-11-28 22:22:06 24 4
gpt4 key购买 nike

我已经在 tomcat/webapps 中部署了一个外部应用程序(通过 html 页面访问)并试图将其与我的 Liferay session 同步。问题是超时不同步(由 web.xml 中的 session-timeout 属性指定),并且访问此页面时的任何事件都不会向 Liferay 注册(因此,超时不会重置,所以我总是在计时在 session 超时属性中指定的时间后退出,默认为 60 分钟)。

我试图在我的 html 页面中显式调用 Liferay.Session.extend(),firebug 显示进行了延长 session 的 POST 调用,但 Liferay 似乎仍然无法识别它。

任何想法将不胜感激。

谢谢

最佳答案

当您在 liferay 中处理一个应用程序时,这意味着您正在处理一个 portlet,除非您移动到另一个 portlet,否则 liferay session 不会重置。所以一旦 60 分钟结束,您将自动超时。

无论您在 portlet 中做什么,它都是一个 ajax 调用 w.r.t Liferay,因此解决方案是尝试为每个 ajax 调用扩展 session 。

尝试将以下 jquery 脚本代码放入您的 portlet 网页中。

jQuery(文档).ready(函数() {

    A4J.AJAX.AddListener({
onafterajax : function(req, evt, data) {
Liferay.Session.setCookie();
}
});
});

祝你好运

关于tomcat - 将tomcat session 超时与已部署的应用程序同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12840179/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com