java - Portlets - 从服务器端保持 session Activity

标签 java spring session portlet

我正在实现 jsr 186 portlet,混合使用一些 servlet 来实现一些 ajax。问题是如果我只进行 AJAX 调用一段时间,我会丢失 session 。奇怪的是,使 servlet session 保持 Activity 状态并不能防止 portlet session 超时。

有没有办法让我在服务器端的 servlet 中保持 session Activity ?

FWIW 我正在使用 spring 和 spring mvc/portlet。

谢谢, 米盖尔平

最佳答案

我遇到了同样的问题。 (使用 OpenPortal Portlet 容器)

据我所知,有两个不同的 session ,1- portlet session ,2- 容器 session 。

我创建了一个简单的 portlet 并定期从容器中使用 ajax 向 portlet 发出请求。但是, session 超时。我的代码片段在这里:

<%
    int per=15000; //ms
    String sessionExtenderPath = "http://portal.abc.com.tr:8080/SessionExtend/SessionExtend";
    //This is a portlet which includes servlet that returns a simple string.
%>

<script>
    periyod=100;

    function invokeRequest(){
     $.get("< %=sessionExtenderPath% >", function(data) {
      alert(1);
     });
    }
    window.setInterval("invokeRequest()",periyod);
</script>

我已经通过请求容器页面(没有为 portlet 定义 channel )解决了我的问题。

感谢编辑。

关于java - Portlets - 从服务器端保持 session Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/945828/

相关文章:

java - Gradle:如何排除一些测试?

java - 在 JSP 中显示文件系统存储的图像

java - MVC 架构 DTO/模型映射/转换

javascript - 从Javascript运行PHP文件来检查在线用户: says users who are not logged in are

php - 使用 AJAX 自动刷新在 Web 应用程序上超时的方法

java - 使用 spring RestTemplate 消耗 json+hal _embedded 资源的问题

java - Delphi 与 C++ Builder - 对于使用 Win32 的 Java 程序员来说,这是更好的选择

java - JSON 字符串以及如何处理转义字符

java - Spring MVC 设置全局 DateTimeFormat

java - 从命令行使用 curl 时 session 死亡