JSF 退出登录时删除session

来源:互联网 发布:域名交易 贴吧 编辑:程序博客网 时间:2024/06/04 22:23
    /**
     * ログアウト、sessionを削除
     * @return
     * @throws IOException
     */
    public String logOut() {
        FacesContext facesContext = FacesContext.getCurrentInstance();
        ExternalContext extContext = facesContext.getExternalContext();
        HttpServletRequest req = (HttpServletRequest)extContext.getRequest();
        HttpSession session = req.getSession(false);
        HttpServletResponse  res = (HttpServletResponse)extContext.getResponse();
        try {
            res.sendRedirect("../login/login.jsf");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();

        }

      //指示当前response已产生,JSF应该在当前阶段执行完成后立刻结束整个生命周期

        facesContext.responseComplete();
        if(session != null){

            ExtCmdManager.resultMap.remove(session);

           //删除session

            session.invalidate();
        }
        return "success";
    }


原创粉丝点击