2 Replies Latest reply on Sep 9, 2008 8:43 AM by nimo22

    Seam Session.invalidate does not destroy HTTPSession

    nimo22

      I have found out, that when I destroy a SEAM-Session (org.jboss.seam.web.session), then my HttpSessionListener does NOT detect that the HTTPSession is now invalidated.


      That means the HTTPSession (looks like 6FBAFE3502E89...) still outlives (!?).


      Only when I explicity destroy the HTTPSession (or a session timeout occurs),
      the Listener tells me, that the Session is really destroyed.


      However, SEAM does forbid to destroy a HTTPSession directly:


      Session event listener threw exception
      java.lang.IllegalStateException: Please end the HttpSession via org.jboss.seam.web.Session.instance().invalidate()
           at org.jboss.seam.contexts.Lifecycle.endSession(Lifecycle.java:221)
           at org.jboss.seam.contexts.ServletLifecycle.endSession(ServletLifecycle.java:129)
           at org.jboss.seam.servlet.SeamListener.sessionDestroyed(SeamListener.java:49)



      Why? What is the difference between HTTPSession and SEAMSession?