2010-07-07 120 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>