具有无限会话的Tomcat中的GWT应用程序

时间:2012-03-11 16:00:31

标签: session gwt tomcat

我在Tomcat 6中运行了一个GWT应用程序。问题场景如下:

  • 人们正在使用该应用程序,例如用户B点击该应用程序。
  • 现在我重新启动应用程序
  • 如果我没有打开GWT应用程序的起始页面,那么一旦用户B继续在应用程序中工作,整个Web应用程序就会崩溃。

现在,如果我可以设置会话超时就足够了,这意味着用户在30分钟后被重定向到起始页面(如果他在应用程序中没有做任何事情)。由于维护原因,重新启动目前仅在0300发生。

因此我想知道,如果我可以在Tomcat中为GWT应用程序设置会话超时?在web.xml中,超时设置为30分钟,但我认为它不适用于GWT应用程序。

1 个答案:

答案 0 :(得分:1)

应用程序的GWT部分只是客户端,不控制会话。要获得所需的行为(在30分钟不活动后超时),创建一个servlet过滤器,在每个请求中查看会话中的最后一个请求时间,如果它已过期,则创建一个新的未经身份验证的会话,如果未过期则更新下一次超时的会话(或时间+30分钟)。然后在您的servlet代码中检查经过身份验证的会话,如果它无效,则重定向到登录页面。