java.lang.IllegalStateException: getAttribute: Session already invalidated我的监听器应该没问题   前边我看见他调用了   
第一次登录  第二次登录覆盖session   第三次出现这个错误    if(userhash.containsKey(user.getUserid())){
UserStatus userold=userhash.get(user.getUserid());
if(userold!=null&&userold.getSession().getAttribute("userstatus")!=null){
//销毁上个用户的session
userold.getSession().invalidate();
}
我在用户的对象里边加了个session   如下:
session.setAttribute("userstatus", user);
session.setMaxInactiveInterval(maxInactiveInterval);
//设置最新的session
user.setSession(session);

解决方案 »

  1.   

    java.lang.IllegalStateException:   getAttribute:   Session   already   invalidated     但是我的sessionDestroyed没有被调用过   什么情况   应该没有销毁啊 
      

  2.   

    判断前面一个session,并销毁之后你是怎么覆盖的,代码贴全一点看看
      

  3.   

    invalidate()方法并不是马上销毁session   而是标记这个session为销毁状态  所以第二次调用销毁   就报错了好像和用户绑定了  因为用户第二次登录   是一个新的session   新session调用invalidate()就出错了  呵呵 谢谢你啊