[jboss-user] [EJB 3.0] - EJB3 CallByValue=false, but acts like its true

fisherv@teoco.com do-not-reply at jboss.com
Tue Jun 10 16:18:49 EDT 2008


I'm using JBoss 4.2.2, EJB3, and JDK1.5_012.  

After converting some EJBs from EJB2 to EJB3, I realized that the original EJB authors had assumed a call-by-value behavior - i.e., changes to param objects made inside a call would be reflected outside the call without returning the param objects.  Normally, I'd never use call-by-value in the first place with an EJB, but this is legacy code.  This is working in JBoss 4.0.3SP1 with EJB2's.

Searches turned up ear-deployer.xml, which has the CallByValue attribute.  
I tried both true and false values, but neither allowed the CallByValue behavior.  

When the say "CallByValue", do they really mean it?  Or is this just a performance optimization for the sending of the param, but doesn't actually make any changes to object params visible to the caller?

Has anyone verified that this works?  Is there another value I have to set somewhere else?  I would expect this ear-deployer value to affect all ejbs, but no mention of EJB2 vs EJB3 is made in the docs when discussing this config value.  See: 



View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4157142#4157142

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4157142

More information about the jboss-user mailing list