permaculture playing cards*
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 Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Servlets
Bookmark "A question about HttpSessionActivation Listener" Watch "A question about HttpSessionActivation Listener" New topic
Author

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


Servlet
=====




JSP File
======



My Web.xml File
===========




http://thought-bytes.blogspot.com/2007/03/how-to-load-balance-tomcat-55-with.html

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
-----------------------------------



Servlet3.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]
 
wood burning stoves
 
subject: A question about HttpSessionActivation Listener
 
Similar Threads
Session Object fails in Clustered environment
Error Instantiating Web App - Listener
Signle sign on without using Session Cookie
A doubt about sessionDestroyed method in HttpSessionListener
HttpSessionActivationlistener