1 Reply Latest reply on Aug 15, 2001 5:39 AM by Andreas Schouten

    problems with org.jboss.ejb.CacheKey jBoss restart nessesary

    Andreas Schouten Newbie

      I'm using jBoss 2.2.2 with tomcat 3.2.2

      When a error occurs in ans stateless session bean the exception is throm as remote exception to the client. (first stack trace below)

      But after this exception I can't call the session bean any longer! I dont cache it's instance on the client.
      Also from an new client (new servlet session) I can't access the session bean.
      After restarting jBoss I can reproduce this behavior.

      ---------------------------------------------
      first stack trace
      ---------------------------------------------

      javax.transaction.TransactionRolledbackException: Matrix is not 2 dimensional; nested exception is:
      java.rmi.RemoteException: Matrix is not 2 dimensional
      java.rmi.RemoteException: Matrix is not 2 dimensional
      at eacm.ejb.PlotterBean.getPNGPlot(PlotterBean.java:45)
      at java.lang.reflect.Method.invoke(Native Method)
      at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:472)
      at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:87)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:133)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:263)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:99)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:190)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
      at org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:271)
      at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:482)
      at org.jboss.ejb.plugins.jrmp.interfaces.StatelessSessionProxy.invoke(StatelessSessionProxy.java:152)
      at $Proxy16.getPNGPlot(Unknown Source)
      at eacm.servlet.Image.doGet(Image.java:30)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
      at org.apache.tomcat.core.Handler.service(Handler.java:287)
      at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
      at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
      at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
      at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
      at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
      at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
      at java.lang.Thread.run(Thread.java:498)



      -------------------------------------------------
      second stack trace
      -------------------------------------------------
      javax.transaction.TransactionRolledbackException: id may not be null; nested exception is:
      java.lang.Error: id may not be null; nested exception is:
      javax.transaction.TransactionRolledbackException: id may not be null; nested exception is:
      java.lang.Error: id may not be null
      javax.transaction.TransactionRolledbackException: id may not be null; nested exception is:
      java.lang.Error: id may not be null
      java.lang.Error: id may not be null
      at org.jboss.ejb.CacheKey.(CacheKey.java:51)
      at org.jboss.ejb.plugins.EntityInstanceCache.createCacheKey(EntityInstanceCache.java:47)
      at org.jboss.ejb.EntityEnterpriseContext$EntityContextImpl.getEJBObject(EntityEnterpriseContext.java:159)
      at eacm.ejb.ImplMatrixBean.notifyAddedFromPersistence(ImplMatrixBean.java:1476)
      at com.mvcsoft.persistence.relationship.RelationshipBase.frameworkAddFromPersistence(RelationshipBase.java:81)
      at eacm.ejb.PersistentRelationshipDataBelongToExposureData.loadRelationship(PersistentRelationshipDataBelongToExposureData.java:65)
      at com.mvcsoft.persistence.relationship.DependentCollection.load(DependentCollection.java:89)
      at com.mvcsoft.persistence.relationship.DependentCollection.iterator(DependentCollection.java:153)
      at eacm.ejb.ExposureDataBean.getMatrix(ExposureDataBean.java:145)
      at java.lang.reflect.Method.invoke(Native Method)
      at org.jboss.ejb.EntityContainer$ContainerInterceptor.invoke(EntityContainer.java:722)
      at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:208)
      at org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:186)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:133)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:263)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:99)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:190)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
      at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:323)
      at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:482)
      at org.jboss.ejb.plugins.jrmp.interfaces.EntityProxy.invoke(EntityProxy.java:146)
      at $Proxy22.getMatrix(Unknown Source)
      at eacm.ejb.PlotterBean.getMatrix(PlotterBean.java:68)
      at eacm.ejb.PlotterBean.getPNGPlot(PlotterBean.java:43)
      at java.lang.reflect.Method.invoke(Native Method)
      at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:472)
      at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:87)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:133)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:263)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:99)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:190)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
      at org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:271)
      at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:482)
      at org.jboss.ejb.plugins.jrmp.interfaces.StatelessSessionProxy.invoke(StatelessSessionProxy.java:152)
      at $Proxy16.getPNGPlot(Unknown Source)
      at eacm.servlet.Image.doGet(Image.java:30)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
      at org.apache.tomcat.core.Handler.service(Handler.java:287)
      at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
      at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
      at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
      at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
      at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
      at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
      at java.lang.Thread.run(Thread.java:498)