wood burning stoves 2.0*
The moose likes Servlets and the fly likes A question about HttpSessionActivation Listener Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Servlets
Bookmark "A question about HttpSessionActivation Listener" Watch "A question about HttpSessionActivation Listener" New topic

A question about HttpSessionActivation Listener

Parthiban Malayandi
Ranch Hand

Joined: Apr 15, 2008
Posts: 70
Hi all,

I studied about HttpSessionActivation Listener and in order understand it fully I created a simple program . I studied that the listener will be invoked whenever session attribute is migrated from one JVM to another .

The following was what I did to understand HttpSessionActivationListener

Created two instances of Tomcat in a single box.(Actually two services)

Configured Apache Http Server to point the two instances (Load balancing and fail over)

Created a small web application and deployed in two servers

Whenever I stop once instance I'm getting a message "Session Will Passivated "(which is what I have in overridden sessionWillPassivate method)

but I'm not getting "Session Did Activated" message (overridden in sessionDidActivated method) .

Please clarify me why I'm not getting Activated method message .

Thanks in advance

Parthiban Malayandi
Ranch Hand

Joined: Apr 15, 2008
Posts: 70
This is what I did


JSP File

My Web.xml File


That is URL I used to configure Apache with Tomcat for Load balancing .

Please clarify me.
Aj Deschanel
Ranch Hand

Joined: Oct 20, 2009
Posts: 40
did you try this ?
mark web apps as distributable.

SCJP 1.6, SCWCD 1.5
Parthiban Malayandi
Ranch Hand

Joined: Apr 15, 2008
Posts: 70
Hi AJ,

Thanks for your reply.First of all sorry for the delayed response from my side. I tried as you said(Implementing Serializable interface in HttpSessionActivationListener class) and I'm getting "SessionDidActivated" message but not when I expected.

Here's the Scenario when I'm getting SessionDidActivated

When I stop Tomcat instance (say for example currently "Tomcat Instance 1" is serving the request) after hitting "SessionExample" Servlet (mapped as "/sessiontest.do") as I said I'm getting "SessionWillPassivate " message . When I start the same Tomcat instance again I'm getting "SessionDidActivated" message.

What I Thought

After stopped the Tomcat instance I reloaded the same page expecting this time it will served by another Tomcat instance(say "Tomcat Instance 2" and I will get "SessionDidActivated" message since the session will be migrated.

As I expected the page is served by another Tomcat instance but the session is not migrated and I'm not getting "SessionDidActivated" in the new Tomcat instance.

I also created a new Servlet named as (Servlet3) and modified SessionExample.java so that It contains button and when it clicked it will hit a new Servlet(Servlet 3) to test this instead of reloading the same page but it also doesn't help.

Modified Source codes

Modified Listener class

Added in web.xml

Modified SessionExample.java


I'm trying this in a single physical machine with two tomcat instance configured with Apache Http Server .

Is anything I'm missing ? Will it work ?

Thanks for your patience for reading lengthy post .

Hebert Coelho
Ranch Hand

Joined: Jul 14, 2010
Posts: 754

I believe that when you shutdown your first Tomcat instance you are killing your session. When you refresh it is like you are re-sending it.

I think so because I used to work with a software that we got a user inside our session. And, when testing, if we shutdown the Tomcat we lost the insides of our session.

[uaiHebert.com] [Full WebApplication JSF EJB JPA JAAS with source code to download] One Table Per SubClass [Web/JSF]
jQuery in Action, 2nd edition
subject: A question about HttpSessionActivation Listener
Similar Threads
A doubt about sessionDestroyed method in HttpSessionListener
Error Instantiating Web App - Listener
Signle sign on without using Session Cookie
Session Object fails in Clustered environment