2015-04-07 71 views
0

我使用Vaadin 7.3.9和Spring Boot 1.2.1.RELEASE,我想將應用程序的會話超時設置爲15分鐘。Spring Boot和Vaadin 7 - 設置會話超時沒有效果

現在我做如下:

在application.properties

#session timeout in seconds 
server.sessionTimeout=900 

在Vaadin Servlet的配置:

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

此後,我做一個bean從它:

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

還有我下面從書Vaadin

的規則的會話超時應長於心跳間隔或以其他方式會話關閉心跳,然後才能讓他們活着。

所以默認值是(從圖書Vaadin再次)申請我不設置此參數:

心跳請求的時間間隔可以在幾秒鐘與heartbeatInterval參數指定作爲整個Web應用程序的上下文參數或單個servlet的init參數。默認值是300秒(5分鐘)。

不幸的是,15分鐘後應用程序仍然存在。我究竟做錯了什麼?

回答

0

我設法弄清楚自己出了什麼問題。我在應用程序中使用進度條,所以我在全局範圍內設置了輪詢間隔。在進展發生之前將其打開並在作業完成時關閉就足夠了 - 無需始終保持它。

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