2012-11-13 99 views
1

我們使用的是Vaadin應用程序,在使用時,Vaadin最終會顯示錯誤「Session expired」,但在Glassfish中,會話超時設置爲8小時超過上次訪問和獲得'會話過期'之間的時間段)。在調試應用程序後,我們挖掘了這件事:在加載頁面時,Vaadin使用request.getSession(true)請求會話,以用於隨後使用的ajax請求request.getSession(false);並最終request.getSession(false)返回null,所以session expired消息出現。看來,Web容器忽略會話超時設置。在Vaadin應用程序中忽略Glassfish會話超時

回答

2

Glassfish中的默認會話超時時間爲30分鐘。如果這符合您的體驗,8小時(28800秒)的超時設置完全被忽略。

您可以指定在GlassFish中-web.xml中的超時: 與GlassFish Web的應用程序>會話配置>會話性能>設置的時間

或者你可以有一個session-timeout元素在網頁中指定.xml文件。這將覆蓋timeoutSeconds值。

+0

感謝您的回答。我們在web.xml中指定了4小時的會話超時,現在試圖重複這個錯誤。 –

+0

現在沒有發現任何問題,我將問題標記爲已回答。感謝您的回覆 –

相關問題