Invalidating a session in java gerald anderson and kim chiu dating
I have idea like by using Http Session Listener we can do.But after creating a class of Http Session Listener, what should I do.Any existing binding with the same name is overwritten.For an object bound into the session to be distributed, it must implement the serializable interface.My jsp page gets called on click of a link in my application.What I need to do is My jsp page should check if the current session is still valid & if it is then invalidate the session & redirect to another page outside the application. Please let me know how to check, if the sesion is valid & invaidate it if it is valid. As per my knowledge in a jsp page session object can never be null, because if you look at the _jsp Service method of servlet(jsp compiled servlet) the following line of code gets executed session = page Session(); means your session object is not null. In my application we have to invalidate all the sessions at a particular time.And we are using Quartz schedualr which will calls a class which is implementing Job. Using this I want to invalidate all the active sessions.
get Session() returns the session associated with the given session ID.
A reference to the server's Http Session Context is available via any session object's get Session Context() method: public Http Session Context Http Session Context() This method returns the context in which the session is bound.
It throws an Illegal State Exception if the session is invalid.
When even you want to invalidate the sessions get the list of values in the map from Servlet Context, iterate through it and invalidate one by one, clear the list. This could present a problem when you iterate through the map and call invalidate on each session.
This is one of the way, i am sure there can be some better way as well. It's what I have done in the "Session Monitor" example on my site, map is a good way to keep track of objects by key. See, a reference to all the Http Session objects is needed to invalidate all the sessions. When you invalidate the session, the listener is going to try to remove it from the map while you're still iterating through it.
Use invalidate() method on session object to invalidate a session if the session object is not null. As per my knowledge in a jsp page session object can never be null, because if you look at the _jsp Service method of servlet(jsp compiled servlet) the following line of code gets executed session = page Session(); means your session object is not null.