<body unload="document.form1.submit();">
 <form name="killSession.jsp" action="url"></form>
</body>这只是一种构思,希望有效。

解决方案 »

  1.   

    关闭最后一个网页之后肯定session已经invalidate了
    不过,要是实现你的想法......学习ing
      

  2.   

    可是,你有没有注意到<body unload="document.form1.submit();">这个事件在用户点击IE的refresh按钮的时候也是触发的,这样如果用户不想注销而是刷新了一下网页,那么也会被踢出的,这样总不好吧
      

  3.   

    应该是用JavaScript实现。当页面关闭时,请求一个servlet,这个servlet就把这个session invalidate掉。
      

  4.   

    to:GeorgeHill(脚趾)
    用servlet如何实现了?
      

  5.   

    如果用户没有关闭当前的浏览器窗口的话,那么它所访问的所有的网站的session只要没有过期都是有效的。同样,如果关掉了这个浏览器窗口的话,那么所有的session都失效了。
      

  6.   

    只关闭浏览器session是不会失效的,不信你去监听一下看看!
      

  7.   

    我的用词不当,不应该说是失效,而应该说客户端无法再取得这个session了。
      

  8.   

    如果是直接按的是浏览器的叉叉关的,我想是没有办法了,只能设置session的timeout时间了
    因为http本身是无状态的协议,靠的服务器端的维护模拟存在的状态。你用叉叉关了浏览器根本没有办法通知服务器端,除非通过连接关闭或者是按钮关闭通知服务器
      

  9.   

    没办法要是服务器对每个浏览器都做监听的话~~~~~恩,给你一个构思,你可以做一个 filter 在每得到一个来自客户端的HTTP申请的时候开始唤醒起监听功能的bean(当然了,这个bean还是要你自己写的),然后这个bean负责不断的向客户端的浏览器发送查询包---类似与PING,然后~~~~天,我想着都觉得可怕,这要消耗多少资源啊!!!不过你可以把发送监听包的时间设置的大一点~~~恩,似乎有一些聊天室就是这么写的QQ也该是吧