簡體   English   中英

Spring Boot和Vaadin 7-設置會話超時無效

[英]Spring Boot and Vaadin 7 - setting session timeout has no effect

我正在使用Vaadin 7.3.9和Spring Boot 1.2.1.RELEASE,我想將應用程序的會話超時設置為15分鍾。

現在,我正在執行以下操作:

在application.properties中

#session timeout in seconds
server.sessionTimeout=900

在Vaadin Servlet配置中:

@VaadinServletConfiguration(productionMode = false, ui = AppUI.class, closeIdleSessions = true)
public class AppServlet extends VaadinServlet {
}

然后,我用它制成一個豆:

@Configuration
public class ServletConfiguration {
  @Bean
  public ServletRegistrationBean vaadin() {
    return new ServletRegistrationBean(new AppServlet(), "/app/*", "/VAADIN/*");
  }
}

我也遵守《瓦丹經》中的規則

會話超時應長於心跳間隔,否則會話將在心跳保持活動之前關閉。

我沒有設置此參數,因此將應用默認值(再次從Vaadin的書中 ):

可以使用heartbeatInterval參數(以秒為單位)指定心跳請求的時間間隔,該參數可以作為整個Web應用程序的上下文參數,也可以作為單個servlet的初始化參數。 默認值為300秒(5分鍾)。

不幸的是,在15分鍾后,該應用程序仍然有效。 我究竟做錯了什么?

我設法找出自己出了什么問題。 我在應用程序中使用進度條,因此全局設置了輪詢間隔。 僅在進度發生之前將其打開,而在完成工作時將其關閉就足夠了-無需一直保持打開狀態。

這意味着上面的代碼完成了我期望的工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM