problems with org.jboss.ejb.CacheKey jBoss restart nessesary
andreas Aug 15, 2001 4:50 AMI'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)