session - 具有无限 session 的 Tomcat 中的 GWT 应用程序

标签 session gwt tomcat

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

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

现在,如果我可以设置 session 超时就足够了,这意味着用户将在 30 分钟后被重定向到起始页面(如果他没有在应用程序中执行任何操作)。出于维护原因,目前仅在 0300 重新启动。

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

最佳答案

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

关于session - 具有无限 session 的 Tomcat 中的 GWT 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9656494/

相关文章:

php mysql..无法将变量分配给数据库中的字段名称

Django session 不适用于 Heroku

java - Maven + Jboss + SmartGWT 应用程序

java - 第一个 servlet,但无法打开它

tomcat - 将 Vaadin/SpringBoot 部署为 WAR

eclipse - Tomcat 和 Eclipse 集成

java - org.hibernate.LazyInitializationException : failed to lazily initialize a collection of role in another environment

android - Google App Engine 上跨 GET 和 POST 的 Beaker Session?

java - 在 GWT 中将最终类变量设为静态

gwt - 升级到 gwt 2.6 后 SuperDevMode 不工作