Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Portlet-从服务器端保持会话活动_Java_Spring_Session_Portlet - Fatal编程技术网

Java Portlet-从服务器端保持会话活动

Java Portlet-从服务器端保持会话活动,java,spring,session,portlet,Java,Spring,Session,Portlet,我正在实现JSR186 Portlet,并混合使用一些servlet来实现一些ajax。问题是,如果我只进行一段时间的AJAX调用,我将丢失会话。奇怪的是,保持servlet会话的活动状态并不能阻止portlet会话超时 有没有一种方法可以让会话在服务器端的servlet中保持活动状态 FWIW我正在使用spring和springmvc/portlet 谢谢, Miguel Ping我使用一个javascript计时器来实现它,该计时器不断轮询portlet url。portlet url是在之

我正在实现JSR186 Portlet,并混合使用一些servlet来实现一些ajax。问题是,如果我只进行一段时间的AJAX调用,我将丢失会话。奇怪的是,保持servlet会话的活动状态并不能阻止portlet会话超时

有没有一种方法可以让会话在服务器端的servlet中保持活动状态

FWIW我正在使用spring和springmvc/portlet

谢谢,
Miguel Ping

我使用一个javascript计时器来实现它,该计时器不断轮询portlet url。portlet url是在之前生成的,因此可以在javascript中访问它。

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

正如我所知,有两个不同的会话,1-portlet会话和2-Container会话

我创建了一个简单的portlet,并使用ajax定期从容器向portlet发出请求。但是,会话超时。我的代码分数如下:

<%
    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>

periyod=100;
函数invokeRequest(){
$.get(“<%=sessionExtenderPath%>”,函数(数据){
警报(1);
});
}
setInterval(“invokeRequest()”,period);
我通过请求容器页面(不为portlet定义通道)解决了我的问题

谢谢你的编辑