2010-05-02 77 views
1

我有一个支持bean的web应用程序,它具有当前登录用户的上下文。它在JSF上实现。JSF--在注销和登录时重启会话Bean

当用户注销时,他被转发到登录屏幕(在另一个JSP页面中)。我希望在这种情况发生时删除当前会话,并在下次用户登录并输入应用程序时创建新会话。

我的问题是 - 你如何删除会话? (我想新的会话将在用户下次进入链接时自动创建)

这是有点新奇我猜,但我找不到解决方案。 感谢您的帮助!

+0

HttpSession#invalidate()使当前会话无效 – Inv3r53 2010-05-02 10:45:21

回答

5
((HttpSession) FacesContext.getCurrentInstance() 
    .getExternalContext().getSession(false)).invalidate(); 
+0

而我下一次登录会话时会重新创建吗? – Ben 2010-05-02 11:47:18

+0

是的,它会的。试一下,以防万一。 – Bozho 2010-05-02 12:07:58

0

FacesContext.getCurrentInstance()。getExternalContext()。invalidateSession();

+2

7年后... :) – Ben 2017-05-09 15:17:25