struts 2 用户注销 不能 清除usersession

发布于 2022-09-04 21:06:54 字数 1825 浏览 13 评论 0

1.使用的是struts 2 action已在配置文件中定义

<action name="logout" class="Action.UserAction" method="logout">
   <result name="suc">/index.jsp</result> 
</action>

index.jsp首页显示用户登录信息。

(1)得到usersession

<%      //HttpSession usersesstion = request.getSession();

//session.setAttribute("usersession", request.getAttribute("user1")); 
UserAction useruser =(UserAction)session.getAttribute("usersession");

System.out.println("loaduserid="+useruser.getUsername());
%>

(2) 显示用户信息是可以得 但是登出时并不执行action

<div class="carting">
                    <ul>
                        <li> <% if((String)useruser.getUsername()==null){%> 
      <a href="login.jsp#loginid">LOGIN</a>
    <% }
    else {%><a><%=useruser.getUsername()%>,welcome!</a>
<a onclick="return logout()">logout</a>
    <script>
   function logout() {
     
     
     var strconfirm = confirm("Do you really want to log out?");
     if (strconfirm == true) {
         window.location.href='logout.action?username=<%=useruser.getUsername()%>';
         return true;
     }
        
   }
    </script>
    <%} %>  </li>
    
    

(3)我的action是这么写的

public  String logout() throws Exception  {
        System.out.println(username);
        HttpServletRequest request = ServletActionContext.getRequest();
        HttpServletResponse response=ServletActionContext.getResponse();
                System.out.println("logout");
                HttpSession session = request.getSession(false);
                session.removeAttribute("usersession");
                return "suc";
        

    }}

求问大牛吗 这是啥原因,为啥不能清除session呢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文