I am creating this issue as a documentation and watch point for the eventual enabling of session replication for contexts that are the targets of a cross context dispatch. This issue was discussed on the tomcat-dev mailing list. The archive of the discussion can be found here: http://www.mail-archive.com/tomcat-dev%40jakarta.apache.org/msg73283.html
Further discussion of the issue can be found here: http://www.mail-archive.com/dev%40tomcat.apache.org/msg01312.html Peter Rossbach now plans to implement Cross-Context Session Replication in release 5.5.14. The proposed solution discussed by Remy and Peter is to use the endAccess method in ClusteredSession to populate a thread-local that will contain the list of all the sessions that were modified and that need to be replicated. Then the ReplicationValve can use this thread-local to perform the replication of all the affected sessions.
Hello John and Eric, I have add now the support for cross context cluster session replication. Look at svn head for tomcat 5.5.16. My tests are very basic and we need help from real application with cross context usage. Thanks peter
I have set up a full clustered portal/portlet environment using the latest 5.5.16 svn head code from 19 Jan 2006 and I have verified that both normal and cross-context session changes are now being properly replicated. The JSR-168 portlet community is eternally grateful to Peter for this work! I'll be posting a Wiki page to document the configuration and provide a sample webapp for testing.
Here is the Wiki article I put together to document how to use this new functionality with JSR-168 portlet applications: http://www.ja-sig.org/wiki/display/PLT/Clustering+JSR-168+Portlet+Applications+in+Tomcat Thanks again to Peter for getting this implemented!
FYI - There was a regression on this in Tomcat 6. Peter has fixed it again (Thanks, Peter!) and it will be available in Tomcat 6.0.21 as well as Tomcat 7.