Problem with session.invalidate in logout
[Logo]
ICEsoft.org Forums: ICEfaces, ICEmobile, ICEpdf
[Search] Search   [Recent Topics] Recent Topics   [Groups] Home Page | www.icefaces.org  [Register] Register  [Login] Login 
Problem with session.invalidate in logout  XML
Forum Index -> General Help
Author Message
gandalf7170

Joined: 27/07/2007 00:00:00
Messages: 13
Offline


Hi

I'm using IceFaces 182, Tomcat 6.0.26 to build an application; it uses form-based login, so to logout, I use the session.invalidate() method. It works fine, but after logging out, the log file of Tomcat starts to fill up with messages like this:

Mar 17, 2010 2:15:52 PM com.icesoft.faces.webapp.http.servlet.SessionDispatcher$Monitor shutdown
INFO: Session already invalidated.
Mar 17, 2010 2:16:02 PM com.icesoft.faces.webapp.http.servlet.SessionDispatcher$Monitor shutdown
INFO: Session already invalidated.
Mar 17, 2010 2:16:12 PM com.icesoft.faces.webapp.http.servlet.SessionDispatcher$Monitor shutdown
INFO: Session already invalidated.

As you'll notice, this message is issued exactly every 10 seconds, which looks to be the frequency of the Monitor thread. What is even stranger is that after closing X sessions, I get X times the same message in one second.

The real issue is that it seems to impact the user session lifetime: users get disconnected after a few minutes.

Would you have any help with that issue?

Thanks a lot

Jean-Noel Colin
kiste1985

Joined: 23/03/2009 00:00:00
Messages: 1
Offline


Hello,

first of all, sorry that I reply to this old topic, but we have the same problem here using ICEFaces 1.8.2 and Tomcat.

This error is reproduceable since Tomcat version 6.0.29 till newest 7.0.22. Tomcat 6.0.18 is fine.

Debugging shows, that the Session Monitor calls shutdownIfExpired() again and again which seems to call the shutdown() from the Monitor class. The shutdown() calls then the notifySessionShutdown(session, context).

In notifySessionShutdown the comment says "If the Session has been externally invalidated this method doesn't need to invalidate it again as that can cause infinite loops in some containers."

The invalidation of the session is not done in notifySessionShutdown but in shutdown() and there the message "Session already invalidated." is printed out because the IllegalStateException is thrown.

Maybe the invalidation of the session in shutdown() is wrong, too?!
Does anyone have an idea how to fix this or is there a bug entry anywhere?! I did not find much about this problem except this thread! ;-)

Regards
Kiste1985
 
Forum Index -> General Help
Go to:   
Powered by JForum 2.1.7ice © JForum Team