This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
It's been sometime since I have worked in EJB 3, but as long as I remember EJBs are (by default) bound in JNDI at the following location:
java:global/<applicationName>/<moduleName>/<bean component name>!<fully qualified interface name>
For example: java:global/myApp/myModule/MyBeanComponent!com.foo.MyBeanComponentLocalInterface
You can try looking up your EJB based on the above Jndi Url scheme.
Moreover, just remember that if you need to access EJBs from a plain Java client which runs outside the EJB container (for example, a swing application), you need to have EJB container's client jars on Java client classpath,
otherwise it won't work.
You may try and read following url which explains
Just another - even if unrequired - advice from me. Even it seems a cool thing - and it have seemed so to me for a long time, believe me - nowadays I would not expose EJB functionalities
via EJB client. Simply, it's too complex, since you need to provide ejb client jars with your application and these client jars may need to be updated when you install fixes on your
appserver; you'll have to deal with firewalls and so on.
It's by far better use REST or SOAP webservices. With EJB 3, you can expose your services as webservices just with a couple of annotations (@Webservice and @Webmethod)