是否可以在JBOSS EAP 6.1中以编程方式配置会话超时?在会话范围的bean上使用@PostConstruct还是有会话创建的侦听器?
答案 0 :(得分:1)
您可以使用HttpSession#setMaxInactiveInterval。然后你可以有一个实现HttpSessionListener
接口的类,所以无论何时创建新会话,你都可以以编程方式为它设置新的超时。
public class MyHttpSessionListener implements HttpSessionListener {
@Override
public void sessionCreated(HttpSessionEvent event) {
event.getSession().setMaxInactiveInterval(yourInterval);
}
@Override
public void sessionDestroyed(HttpSessionEvent event){
}
}
据我所知,现在有了如何在CDI
中执行此操作,但Servlets
和CDI
是兼容的技术,因此它应该协同工作。请注意,您可以向此侦听器注入任何CDI
bean。