Primefaces 轮询标签出现会话超时问题

问题描述 投票:0回答:1

我们的应用程序是基于 Spring Boot 构建的,前端是使用 primefaces 6.2 构建的...最近我们需要检查会话是否处于活动状态..也就是说,我们需要从客户端每 40 分钟进行一次支持 bean 调用..这将调用另一个 API 来检查会话是否存在。

从现有的实现中,我们使用idleMonitor来识别客户端的空闲时间,并在达到30分钟时使会话无效。然后用户将被重定向到登录页面

<p:idleMonitor timeout="#{appSesionBean.maxIdleTimeOut}"  onidle="PF('timeOut').show();AppUI.showCountDownTimer();" > </p:idleMonitor> <p:poll interval="#{appSesionBean.getSessionRefreshInterval()}" listener="#{appSesionBean.refreshSession()}" />

根据新要求,我添加了配置为 40 分钟的轮询标签,以检查会话是否处于活动状态。

我现在面临的问题是,轮询标签会话永远不会失效。我在 40-45 分钟后刷新页面,会话仍然处于活动状态,用户没有被重定向到登录页面。

由于我是这个 primefaces poll 和 idelMonitor 的新手,我想知道这两个是否不能放在同一个表格中?

  • 如果使用idleMonitor 时出现问题,您可以帮助我吗? 和民意调查标签?
  • 有没有其他方法可以定期实现 从客户端调用支持 bean?
  • poll 标签可以防止会话失效吗?
jsf primefaces
1个回答
0
投票

正如 @tandraschko 指出的那样,每个 AJAX 调用都会接触来自 JSF 的会话,从而刷新您的会话。

但是,如果您想跟踪它,PrimeFaces Extensions 有这个聪明的会话组件:https://www.primefaces.org/showcase-ext/sections/session/basic.jsf

它根据用户当前的会话超时在客户端进行倒计时,并知道在进行 AJAX 调用时如何重置。

© www.soinside.com 2019 - 2024. All rights reserved.