做了一个 session销毁问题 ,当关闭浏览器的时候 触动session销毁的方法session.invalidate() 在本地运行是 是可以销毁地,当其他电脑调用本地电脑访问时 则不可以 调用session.invalidate()这个方法,在关闭的主页面 是这样写的<body onunload="Destroyed();"  > js 是这样写的 
function Destroyed(){
 window.location.href="/taxation/admin/login/destroy.jsp";
}
在 destroy 页面中写<% session.invalidate();%>

解决方案 »

  1.   

    配置文件写个Session监听器,当关闭窗口的时候,会触发一个JS代码,这段代码执行session监听器的销毁事件。试试吧,。
      

  2.   

    不明白  执行session监听器的销毁事件。
      

  3.   

    很简单了,对窗口的关闭的事件写一个js去销毁session。
    但这样做的弊端就是不能打开多个窗口。
      

  4.   

    js 中可以写 销毁session ?
      

  5.   

    没明白楼主的意思,
    浏览器关闭,session就会自动销毁,不用任何操作。
    还有session是在服务端的吧,js怎么可以关闭session。
      

  6.   

    HTTP是无状态的,也就是说服务器端是不知道用户是否关闭了浏览器,如果你想在session失效后做点事情可以实现HttpSessionListener这个接口public class SessionListener implements HttpSessionListener { public void sessionCreated(HttpSessionEvent event) {

    } public void sessionDestroyed(HttpSessionEvent event) {
    HttpSession session=event.getSession();

    }}
      

  7.   

    session.remove() 了不就可以了吗
      

  8.   

    你可以在创建session的时候加上名字,session.setAttribute("name",name);销毁时用session.removeAttribute("name");
      

  9.   

    我也觉得最好去配一个session的监听器,当你退出时监听器自动给你销毁
      

  10.   


    session对象有timer的,过了时自动销毁的. 不过也可以做一个监听器.