We have created an application that uses EJB's en web. The data is transported to the web tier via value objects. These value objects are also hold in some cache at the EJB tier. In the web tier these objects can be modified, but this should not be visible to other sessions, but is not case. That is, the changes are visible to other sessions. We expect the problem to be that all tiers are deployed in one JBoss instance (JVM) and that JBoss optimizes the remote call to use call-by-reference instead of call-by-value.
In the documentation (JBoss Adm. & Dev for 3.2.x) on page 55 is a TODO that states that there has to be a chapter or section about enabling call-by-value.
Can anyone tell me how this should be done?
Create a new container configuration either in jboss.xml or standardjboss.xml. Configure the last client side interceptor to be an instance of org.jboss.invocation.ByValueInvokerInterceptor