Hi Edward, i guess yo are trying to lookup an object in tomcat (because of the http url), if tomcat is on the 4204 port the url should be http://localhost:4204/<openejb context name>/ejb, it is often http://localhost/openejb/ejb.
If you are not using tomcat can you please explain us how you run your server. - Romain 2011/5/10 edward <[email protected]> > Hi, ALL, > > I am trying to write a standalone EJB client, but failed. > > I have a standalone OpenEJB in C drive, I place simple-stateless-1.0.jar > into its app folder. This jar is from OpenEjb example. It works, from log I > can see, > > /////////////// > 2011-05-09 21:07:30,825 - INFO - Jndi(name=CalculatorImplLocal) --> > Ejb(deployment-id=CalculatorImpl) > 2011-05-09 21:07:30,827 - INFO - Jndi(name=CalculatorImplRemote) --> > Ejb(deployment-id=CalculatorImpl) > 2011-05-09 21:07:30,856 - INFO - Created Ejb(deployment-id=CalculatorImpl, > ejb-name=CalculatorImpl, container=My Stateless Container) > 2011-05-09 21:07:30,856 - INFO - Deployed > Application(path=C:\openejb-3.1.4\apps\simple-stateless-1.0.jar) > /////////////// > > Now the clinent is > ////////////////////// > Properties properties = new Properties(); > properties.setProperty(Context.INITIAL_CONTEXT_FACTORY, > "org.apache.openejb.client.RemoteInitialContextFactory"); > //properties.put("java.naming.provider.url", > "ejbd://localhost:4201"); > properties.put("java.naming.provider.url", " > http://localhost:4204/ejb"); > > InitialContext initialContext = new InitialContext(properties); > > Object object = initialContext.lookup("CalculatorImplRemote"); > ///////////////////////////// > It always give me error: > > ///////////////// > Exception in thread "main" javax.naming.NamingException: Cannot lookup > '/CalculatorImplRemote'. [Root exception is java.rmi.RemoteException: Cannot > open object input stream to server (OEJP/3.1) : null; nested exception is: > java.io.EOFException] > at org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:240) > at javax.naming.InitialContext.lookup(Unknown Source) > at com.Test.main(Test.java:20) > Caused by: java.rmi.RemoteException: Cannot open object input stream to > server (OEJP/3.1) : null; nested exception is: > java.io.EOFException > at org.apache.openejb.client.Client.processRequest(Client.java:159) > at org.apache.openejb.client.Client.request(Client.java:42) > at org.apache.openejb.client.JNDIContext.request(JNDIContext.java:87) > at org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:234) > ... 2 more > Caused by: java.io.EOFException > at java.io.ObjectInputStream$PeekInputStream.readFully(Unknown Source) > at java.io.ObjectInputStream$BlockDataInputStream.readShort(Unknown > Source) > at java.io.ObjectInputStream.readStreamHeader(Unknown Source) > at java.io.ObjectInputStream.<init>(Unknown Source) > at > org.apache.openejb.client.EjbObjectInputStream.<init>(EjbObjectInputStream.java:31) > at org.apache.openejb.client.Client.processRequest(Client.java:156) > ... 5 more > > //////// > I am using openejb-itests-standalone-client-3.0.jar as its reference api. > > Please help me on this. > > Thanks > Edward > > >
