Hello I am using a tomcat clustered environment using two tomcat 5.5.20 servers in the Windows machine. I am using the in-memory replication for replicating the session. In my code, I have a session attribute that implements HttpSessionActivationListener interface. I expect this Listener to be called when the session gets replicated on the other server. I see that the session gets replicated but the Listener is not getting called at all. I require this listener to be called so that I can initialize some of the transient session attributes when the session is created on one tomcat instance but the next request goes on the other server.
Can you please let me know why the HttpSessionActivationListener is not getting called? Is there something which I am not doing correctly? Here is my cluster configuration for one of the tomcat instance (which is the same for the other instance except for the port numbers): ..... <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster" managerClassName="org.apache.catalina.cluster.session.DeltaManager" expireSessionsOnShutdown="false" useDirtyFlag="true" notifySessionListenersOnReplication="true" notifyListenersOnReplication="true"> <Membership className="org.apache.catalina.cluster.mcast.McastService" mcastAddr="228.0.0.4" mcastPort="45564" mcastFrequency="500" mcastDropTime="3000"/> <Receiver className="org.apache.catalina.cluster.tcp.ReplicationListener" tcpListenAddress="10.126.1.119" tcpListenPort="4002" tcpSelectorTimeout="100" tcpThreadCount="6"/> <Sender className="org.apache.catalina.cluster.tcp.ReplicationTransmitter" replicationMode="pooled" ackTimeout="15000"/> <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve" filter=".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;"/> <Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false"/> </Cluster> .... Regards Savita