EJB programming & troubleshooting: remote ejb client with websphere
Hi I am having reall issues with unit tests that call my EJB's from outside of websphere. I have used the 'universal test page' in wasad to check the jndi set up is ok and it all seems fine. I then run my app and I get this exception: javax.naming.NamingException: The JNDI operation "lookup"on the context "localhost/nodes/localhost/servers/server1" with the name "ejb/AuthenticationManager" failed. Please get the root cause Throwable contained in this NamingException for more information. Root exception is java.lang.NoClassDefFoundError: com/ibm/ejs/jts/jts/CurrentFactory at com.ibm.ws.naming.jndicos.CNContextImpl.suspendTransaction(CNContextImpl.java:4064) at com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl.java:3521) at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1565) at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1525) at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1225) at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:132) at javax.naming.InitialContext.lookup(InitialContext.java:360) at com.ibm.ivj.ejb.runtime.AbstractAccessBean.lookupAndCacheHome(AbstractAccessBean.java:203) at com.ibm.ivj.ejb.runtime.AbstractAccessBean.getGlobalHome(AbstractAccessBean.java:195) at com.ibm.ivj.ejb.runtime.AbstractAccessBean.getHome(AbstractAccessBean.java:229) I have also tried using the eclipse plugin for jndi explorer and I get the same. Ive looked around on line and can see nothing that I havent already tried. A
- Posted by: Adam Price
- Posted on: March 09 2007 11:34 EST
Try adding the jar containing com/ibm/ejs/jts/jts/CurrentFactory to your classpath. -Vinant
Your client JVM needs a whole bunch of IBM JARs to successfully communicate with WebSphere. There's quite an old developer works article on IBMs website for this: http://www-128.ibm.com/developerworks/websphere/library/techarticles/0409_bhogal/0409_bhogal.html. A quick whizz round the WebSphere downloads look like this still exists as a download for WebSphere 6.1. This should let you use a SUN or IBM JVM as a client to a WebSphere J2EE application.
Nothing works on client ejb for WAS. See my post on http://www.theserverside.com/discussions/thread.tss?m=c.reply&thread_id=23632#230211 I could not understand why the IT guys @ IBM have not properly implemented the dynamic proxy into the code that returns back the remote ejb interface to the client. Still looking for a real/clean/was independent solution.