If you want to use a client that is completely decoupled from the implementation that hosts the EJB, you'll need to use the EJB 2.x client view and a client that instantiates the CosNaming provider. You'll also need to generate static RMI-IIOP stubs during deployment (See here
https://glassfish.dev.java.net/javaee5/ejb/EJB_FAQ.html#CosNaming) and make those stubs available to your client's classpath.
The RMI-IIOP interoperability requirements only apply to the EJB 2.x Remote view, so we don't support direct CosNaming provider access of Remote 3.0 interfaces. For those, you'll need to either use our Application Client or instantiate our naming provider.
[Message sent by forum member 'ksak' (ksak)]
http://forums.java.net/jive/thread.jspa?messageID=250621