Win a copy of Kotlin in Action this week in the Kotlin forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Returning a handle to a stateful session bean  RSS feed

 
DC Roberts
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'm having a problem returning a handle to a stateful session bean. A ClassNotFoundException is returned from the readObject() method of ObjectInputStream. The class it cannot find is the stub to the session bean that I am attempting to get a handle for. I can see that it exists in the correct package.
I'm using a service locator pattern to get the handle and then I store it in an HttpSession object in my servlet through a Business Delegate. When I want to get the handle to the session bean again I call the service locator through my business delegate passing the handle id through to the getService(String id) method of my service locator:
public static EJBObject getService(String id) throws ServiceLocatorException {
if (id == null) {
throw new ServiceLocatorException("test");
}
try {
byte[] bytes = new String(id).getBytes();
InputStream io = new
ByteArrayInputStream(bytes);
ObjectInputStream os = new
ObjectInputStream(io);
javax.ejb.Handle handle =
(javax.ejb.Handle)os.readObject();
return handle.getEJBObject();
} catch(Exception ex) {
ex.printStackTrace();
throw new ServiceLocatorException("test");
}
}
The problem I have is that when it gets to the line
javax.ejb.Handle handle =
(javax.ejb.Handle)os.readObject();
os.readObject() returns a class not found exception:
java.lang.ClassNotFoundException: com.waersystems.ejb.supplier._SupplierMaintenance_Stub
That is the correct stub for the session object and it exists in that package so why am I getting the exception? I'm using Websphere Studio Application Developer 5. Any ideas would be greatly appreciated.
 
Dana Hanna
Ranch Hand
Posts: 227
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This is happening because the stubs are not available to your web app. Are you deploying as a EAR or as a EJB JAR and a seperate WAR?
 
DC Roberts
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have an EAR that includes my web and my EJB projects. The build path of the web project references the EJB project. I have tried adding the stub files to the web project resources without success.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!