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