Sorry for not to be able to type chinese.
The local interface can only be called by within the same JVM. Reason is simple : they are called through IPC instead of RMI.
You are right that you can wrap your EntityBean local interface inside a SessionBean but returning a local interface to client is totally wrong. You should wrap "findAll()" method instead of getCMP().
so inside your session bean you should have "findAll()" method which calls EntityBean "findAll()" and return a Collection which is returned by findAll() in entity bean