Remote EJB is your best bet if the client component is in a different application but deployed on
the same server JVM. WebServices is overkill to use within the same JVM.
All you need to package in the .war are the Remote interfaces and any other domain classes
referenced from the Remote interfaces.
The Reference semantics optimization for Remote EJB invocations only works when the
client component and target EJB are in the same application. However, the performance
for the invocation itself will be optimized compared to a cross-JVM Remote EJB invocation since
the ORB bypasses the network for an intra-JVM call.
[Message sent by forum member 'ksak' (ksak)]
http://forums.java.net/jive/thread.jspa?messageID=224941