2

我对 Seam 中处理会话和对话的方式有疑问。我们有一些相当长的表单,大部分时间你开始填写第一个屏幕,然后在后台执行一些操作,用户离开计算机去做一些工作,然后他们回来并注释工作。

问题是大多数时候会话超时或对话超时。虽然第二个可以通过拆分工作流轻松修复,但第一个更重要,因为用户必须重新登录,导航到右侧屏幕,然后才能输入注释。

有没有一种简单的方法可以让 Ajax 片段在后台触发会话刷新。这将使我们能够无限期地保持会话有效。

还有一种简单的方法可以使对话保持活力吗?

4

1 回答 1

4

您在使用 RichFaces 吗?我们使用这样的东西来保持会话活跃。

<a4j:poll interval="10000" reRender="form1" action="#{logger.userIsAlive}" /> 

“action”属性是可选的,我们用它来记录连接的用户。我们不使用对话,但我会说这也会使对话保持活力。

如果您不使用 RichFaces,则可以使用 JQuery 之类的 AJAX 框架通过调用 Servlet 来 ping 服务器。

于 2010-07-01T00:22:16.993 回答