• Post Reply Bookmark Topic Watch Topic
  • New Topic

NoSuchObjectException: Bean has been deleted  RSS feed

 
lester naval
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am getting the exception NoSuchObjectException: Bean has been deleted
at(weblogic.ejb20.swap.DiskSwap.read(... ) error when I am running the application in Weblogic 7.0 through Rational Test suite for running multiple iterations for volume testing. This error occurs in multiple user scenerios. This exception is thrown randamly for some of the iterations. I have attached the stack trace for reference. When I execute the application manually through the browser, it does not throw any exception.
please help me if any one has a solution to this problem as I do not understand why this problem is occuring.
java.rmi.NoSuchObjectException: Bean has been deleted.
Start server side stack trace:
java.rmi.NoSuchObjectException: Bean has been deleted.
at weblogic.ejb20.swap.DiskSwap.read(DiskSwap.java:172)
at weblogic.ejb20.manager.StatefulSessionManager.getBean(StatefulSessionManager.java:271)
at weblogic.ejb20.manager.StatefulSessionManager.preInvoke(StatefulSessionManager.java:341)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:127)
at weblogic.ejb20.internal.StatefulEJBObject.preInvoke(StatefulEJBObject.java:179)
at bweb.control.ejb.fi.trans.voucher.VoucherEJB_597fz_EOImpl.resetVoucher(VoucherEJB_597fz_EOImpl.java:598)
at bweb.control.ejb.fi.trans.voucher.VoucherEJB_597fz_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:157)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:127)
at bweb.control.ejb.fi.trans.voucher.Voucher_WLStub.resetVoucher(Unknown Source)
at bweb.taglib.UpdateSessionTag.resetVoucher(UpdateSessionTag.java:72)
at bweb.taglib.UpdateSessionTag.doEndTag(UpdateSessionTag.java:48)
at jsp_servlet._docroot.__menu._jspService(__menu.java:129)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:543)
at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:369)
at bweb.taglib.InsertTag.doEndTag(InsertTag.java:86)
at jsp_servlet._docroot.__template._jspService(__template.java:200)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
at weblogic.servlet.internal.RequestDispatcherImpl$ForwardAction.run(RequestDispatcherImpl.java:342)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:252)
at bweb.control.web.MainServlet.doGet(MainServlet.java:167)
at bweb.control.web.MainServlet.doPost(MainServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5445)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3105)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
End server side stack trace
Regards
Lester
 
Dana Hanna
Ranch Hand
Posts: 227
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Without being able to see the code that accesses this EJB, I don't think that we can answer this.
 
lester naval
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
public DispHeader(HttpServletRequest request, PageContext pageContext)
{
voucher = getVoucher();
try
{
voucher.resetVoucher();
// remove the existing AccDetails in session
session.removeAttribute(WebKeys.str_ACCDETAIL);
}
catch (java.rmi.RemoteException re)
{
}
}

/**
* This method returns instance of voucher session bean.
*/
private Voucher getVoucher()
{
ClientController CCI=null;
ModelManager modelmanager =(ModelManager)request.getSession().getAttribute(WebKeys.str_ModelManagerKey);
if ( modelmanager != null )
{
Debug.println("Dispheader : calling create of session bean ******");
CCI = modelmanager.getSCCEJB();
Debug.println("Dispheader : calling after create of session bean ******");

}
try
{
voucher = (Voucher)CCI.GetVoucher();
}
catch (Exception e)
{
Debug.println("voucher not avialable "+e);
}

Debug.println("Dispheader : calling after get voucher of session bean **)(()()(0)((****");
return voucher;
}
Above is the code of my Value object where I call the stateful session bean ClientController reference that maintains a reference of the Voucher EJB (Also Stateful session bean). When run this application using Rational test suite with multiple users concurrently accessing the application.
Regards,
Lester
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!