Does the spec allow one to define both local and remote interfaces for a particular bean? Remember the definition of the interfaces depends on what you feed to the entity tag on your ejb-jar.xml. Is it allowed to feed the tag with both remote and local interfaces?

I think it is. You can use define the remote and local interfaces for an EJB (Except for a MDB). Which interface you would use depends on your client. If your client is a remote client (distributed away from the container) e.g some web tier component deployed on a web server that is not co-located with the application server, you would use the remote interface and RMI /IIOP for invocation. But if your client is a local client e.g Session Facade accessing an EntityBean, you would use the local interface . Or the container may make some optimizations that end up with the local interface being used. You can expose both the remote and the local client view, it depoends on the type of the client which view will be used. Hope this helps. Akasmat.