当用户正在打开办公室(字母编辑工具)弹出窗口时,应用程序屏幕显示超时
初步分析 如果用户在开放式办公室工作超过60分钟 - 服务器不会刷新以延长会话时间(会话活动落后)
我们在web.xml中设置了idletime
请帮我解决如何保持会话活着的问题。
答案 0 :(得分:0)
我过去曾使用过保持活动请求解决方案。基本上,您将JavaScript超时设置为持续时间长于会话超时,通常是会话超时的一半到四分之三。当JavaScript超时触发时,向参与会话的服务器上的控制器发出ajax请求。这将使服务器认为您仍处于活动状态,并应通过重置服务器会话来保持服务器会话的活动状态。
此外,您需要在收到ajax响应时重置JavaScript超时,以便再次启动计时器。
PS:你真的不需要在后端控制器中做任何事情,你只是在戳会话以保持它活着。
答案 1 :(得分:0)
你可以在web.xml中使用-1而不是60作为:
<session-config>
<session-timeout>-1</session-timeout>
</session-config>
如果您不想增加会话时间,那么您可以找到解决方法:
在专用线程中运行您的任务,该线程在工作时触摸(扩展)会话或在线程完成时通知用户