2010-07-07 122 views
13

我想寫我的應用程序的一部分,以便它正常處理會話超時,但我似乎無法控制如何超時時間的持續時間發生測試。JBoss會話超時

我使用JBoss 5.1,而我修改會話配置我的網頁描述符(web.xml),使得會話超時一分鐘(只是用於測試)後

<session-config> 
    <session-timeout>1</session-timeout> 
</session-config> 

但是創建後通過登錄會話,它永遠不會超時。沒有設置,我給它導致超時。

在tomcat環境中,我沒有這個問題。有沒有人有與JBoss類似的問題?

+0

嗨, 我面對我在哪裏使用JBoss 5.1服務器和我的會話超時不工作了同樣的問題。 我已經通過設置在deployers/jbossweb.deployer/web.xml中嘗試了上述步驟。 另外我試圖通過編程強制超時使用 - HttpSession.setMaxInactiveInterval(int秒) 但它仍然沒有超時。 請建議 – Sunayna 2011-01-31 01:28:20

回答

15

的JBoss 5可以讓你在定義一個會話超時的所有應用程序:

deployers/jbossweb.deployer/web.xml 

這可能是因爲在web.xml中覆蓋您的設置。它不應該,但是,你知道...

檢查是否正在改變工作。如果沒有,你可以設置超時時間編程爲您的測試:

HttpSession.setMaxInactiveInterval(int seconds)

這樣,你可以強制超時在一個特定的會話。

+0

謝謝Pere ...它爲我工作。 – 2013-06-24 12:00:40

6

很遺憾,在JBoss EAP 6.1.0.Alpha1(AS 7.2.0.Alpha1-redhat-4)中,我們不得不在web.xml中設置每個web應用程序:See the JBoss docs

哪說用這個:

<session-config> 
    <session-timeout>30</session-timeout> 
</session-config>