I don't know much about Glassfish but this is how it goes in general. You will need to pick a solution by combining all the replies to your email. First, each app server comes with a jndi library. You need to put that in your client's class path and set the initial context to use app server specific classes. Probably you will find a document page on glassfish website for this. Next is to bring in interface classes for the remote ejb; this is a rather manual step but there might be other solutions for this. That said, the rest is a typical jndi lookup. One thing that might catch you though is the ejb name. Conventionally, each app server has a second set of deployment descriptors and in case of, for example, JBoss app server vendor deployment descriptor is the one that sets the ejb name and all that. You might also want to look into classloading issues if your client app will in anyway share a jvm with the app server.