Hi folks !
Our design is like this:
A server keeps a cache of javax.ejb.Handle objects of Stateful Session EJBs.
Clients get the handle by a key using something like:
javax.ejb.Handle handle - SessionEngineEJB.getHandle(key).
UserProxyEJB ejbProxy = (UserProxyEJB) PortableRemoteObject(handle.getEJBObject(), UserProxyEJB.class);
This used to work out of box in JBoss 4.0.1.
But is not always working in JBoss 4.3.0.GA (we get sporadic exceptions)
I checked thet Handle at least inside server instance is valid.
Problem is that we can not seem to be able to use it in the client.
Exact error is:
NameNotFoundException: Name UserproxyEJB is not bound in this context
at org.jboss.proxy.ejb.handle.StatefulHandleImpl.getEJBObject(StatefulHandleImpl.java:184)
First I had to add following two lines in server/conf/jndi.properties file for it to work at all:
java.naming.factory.initial=org.jboss.naming.NamingContextFactory
java.naming.provider.url=jnp://host:port
My question is:
What need to be done for seralization of EJB handles to be full-proof for Stateful Session beans ?
thanks,
-Sanjay