Hi Vincent,

The specification does not indicate the limitations of the scope in 
which local interfaces are effective, beyond requiring that they be 
co-located in a JVM. I wish it did, and I advocated a specific 
statement in the spec in a discussion on ejb-interest.

Obviously pass-by-reference semantics will only work when you 
have a common classloader. The classloader scheme is particular 
to an application server implementation. You are 100% safe using 
local references only within a JAR, and you are probably safe using 
local references between JARs in an EAR. (Someone more familiar 
with the current classloading scheme can comment on this.) 

In my opinion, you are not portable using local references between 
EARs. It might be supported by JBoss when Marc solves the 
"dumbo" problem, but I still wouldn't recommend this approach.

You didn't ask, but... using local references from the web tier is 
possible. However, it is probably a bad idea. An important 
deployment option is to have the web and business-logic tiers on 
different physical machines, e.g. for security. Using a local 
interface completely forecloses this deployment option.

In terms of ejb-link... because local interfaces probably shouldn't be 
available outside of an EAR, they can always be configured using 
an ejb-link. (In theory, at least, ejb-link can link between JARs in 
an EAR. Does it work in JBoss? Haven't tried it...) So when I 
implemented local interfaces, I required ejb-link rather than 
introducing some funky JNDI publishing scheme.

I'm not the only one to do this. I recently saw some posts to ejb-
interest from the pramati server team advocating this approach. 
These were after my implementation, and I didn't get the idea from 
them, but they give some confirmation to my approach. For 
example, see http://archives.java.sun.com/cgi-
bin/wa?A2=ind0107&L=ejb-
interest&P=R15438&D=0&H=0&O=T&T=1.

There is support for the other point of view. BEA WebLogic 6.1 
requires a JNDI name for the local home interface.

Perhaps the EJB 2.0 final spec will clarify these issues.

-Dan


On 8 Aug 01, at 11:57, Vincent Harcq wrote:

> Hi,
> Currently the container verifies that an ejb-link exists inside an
> ejb-local-ref.
> I read through the spec and don't see this is required.
> In most cases the 2 beans will be in the same jar so no problem, but this
> limitation should not happen imho.
> 
> A second point:
> Local interfaces access must be in the same JVM.
> It is not required they must be in the same JAR or the same EAR.
> Will this "pass by reference" work into JBoss ?
> Can 2 ejb jar talk to each other with "pass by reference" if they are
> deployed separately ?
> 
> Vincent.
> 
> 
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> 
> _______________________________________________
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development



_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to