开发者社区> 问答> 正文

java,session销毁的问题Java报错

"

登录成功后,return 完 就直接掉销毁session的方法了,都没回到页面,具体代码如下:

js:

 $.ajax({

          cache: true,

          type: "POST",

          url:'${ctx}/loginAction/login',

          data:'account='+account+'&password='+password,// 

          async: false,

          error: function(request) {

          

          //window.wxc.xcConfirm("网络错误", window.wxc.xcConfirm.typeEnum.info);  // "提示",

          },

          success: function(data) {

          if(data.success==true||data.msg=="relogin"){

          alert(111)

          window.top.location.href ="${ctx}/personal";

          }else{

          //window.wxc.xcConfirm(data.msg, window.wxc.xcConfirm.typeEnum.info);

          }

          }

      });

session销毁:

/**

* 每个浏览器访问结束超时的时候,服务器会销毁相应的HttpSession对象,

* 并触发HttpSession销毁事件,同时调用所注册HttpSessionListener事件监听器的sessionDestroyed方法

*/

@Override

public void sessionDestroyed(HttpSessionEvent event) {

System.out.println(DateUtil.getCrruentTime()+" 销毁sessionId=="+event.getSession().getId());

if (loginMap.containsValue(event.getSession())) {

User userinfo = (User)event.getSession().getAttribute(Constants.LOGIN_INFO_SESSION);

loginMap.remove(userinfo.getUserId());

event.getSession().setAttribute(Constants.LOGINOUT_TYPE, 0);//登录超时

}

if(sessionMap.containsKey(event.getSession().getId())){

sessionMap.remove(event.getSession().getId());

}

}

监听配置:

 <listener>

    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

  </listener>

  <listener>

    <listener-class>com.zyj.listener.MySessionListener</listener-class>

  </listener>


麻烦知道的提供点思路,我排查不出来,不懂为什么return后 直接就调销毁session的方法了,求教!!!

" ![image.png](https://ucc.alicdn.com/pic/developer-ecology/63f8df7278984b3483a27ef3973b39b3.png)

展开
收起
python小菜菜 2020-06-02 19:37:39 1319 0
1 条回答
写回答
取消 提交回答
  • 有个过滤器,去销毁了!!! image.png

    2020-06-02 19:43:51
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载