File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes EJB and other Java EE Technologies and the fly likes EJB 2.0 - Local - Remote Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "EJB 2.0 - Local - Remote" Watch "EJB 2.0 - Local - Remote" New topic

EJB 2.0 - Local - Remote

Alain Boucher
Ranch Hand

Joined: Feb 25, 2003
Posts: 51
1.I would like to know the difference between RemoteInterface, RemoteHomeInterface and LocalInterface and LocalHomeInterface.
2. Is it true that a Servlet can access a RemoteInterface but not a RemoteHomeInterface on the same machine.

Alain Boucher<br />Spare-Brain Consultants Inc.<br />SCJ2P,SCWCD,
Greg Charles

Joined: Oct 01, 2001
Posts: 2968

The EJB interfaces are split into "home" and "remote". The home interface deals with creating and destroying the bean. The remote interface has all the business methods in it. Typically you retrieve a home interface, for example from JNDI, and you it to create the remote interface.
The difference between local and remote arose later. The problem is that clients and beans communicate via network protocols. If the client is, for example, another bean, it could be running in the same JVM so commuincating via the network is a huge waste of time. The local home and local interfaces parallel the home and remote interfaces. Usually, they have exactly the same methods.
As I said before, you use the home interface to retrieve the remote interface, so it makes no sense that a servlet would be able to access the remote without also being able to access the home. However, a servlet might not be able to access the local interfaces, because it would use a different class loader from the beans. That depends on the app server.
I agree. Here's the link:
subject: EJB 2.0 - Local - Remote
It's not a secret anymore!