Here is the test I run :
public void testLoadReason() throws java.lang.Exception
{
new ComponentTest() {
public void testComponents() throws java.lang.Exception
{
ReasonFacadeServiceLocal service =
(ReasonFacadeServiceLocal)
getInstance("reasonFacadeService");
VOReason reason =
service.loadReason("REASON_1");
assert reason != null;
assert reason.getId() != null;
assert "REASON_1".equals(reason.getCode());
}
}.run();
}
And here is the stack trace I get :
testLoadReason
(t4.core.commons.reason.facade.test.ReasonFacadeServiceTest)
Time elapsed: 0.062 sec <<< FAILURE!
t4.core.commons.reason.facade.ReasonFacadeServiceException: Error
performing
't4
.core
.commons.reason.facade.ReasonFacadeService.loadReason(java.lang.String
code)' --> javax.ejb.EJBTransactionRolledbackException: The
transaction has been marked rollback only because the bean encountered
a non-application exception :org.jboss.seam.InstantiationException :
Could not instantiate Seam component: processDao
at
t4
.core
.commons
.reason
.facade
.ReasonFacadeServiceBase.loadReason(ReasonFacadeServiceBase.java:711)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.openejb.core.interceptor.ReflectionInvocationContext
$Invocation.invoke(ReflectionInvocationContext.java:158)
at
org
.apache
.openejb
.core
.interceptor
.ReflectionInvocationContext
.proceed(ReflectionInvocationContext.java:141)
at
org
.jboss
.seam
.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:44)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
56)
at
org
.jboss
.seam
.transaction
.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.core
.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:
44)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.persistence
.EntityManagerProxyInterceptor
.aroundInvoke(EntityManagerProxyInterceptor.java:29)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.persistence
.HibernateSessionProxyInterceptor
.aroundInvoke(HibernateSessionProxyInterceptor.java:31)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
107)
at
org
.jboss
.seam
.intercept
.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
at sun.reflect.GeneratedMethodAccessor58.invoke(Unknown Source)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.openejb.core.interceptor.ReflectionInvocationContext
$Invocation.invoke(ReflectionInvocationContext.java:158)
at
org
.apache
.openejb
.core
.interceptor
.ReflectionInvocationContext
.proceed(ReflectionInvocationContext.java:141)
at
org
.apache
.openejb
.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:67)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.businessMethod(StatefulContainer.java:490)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.invoke(StatefulContainer.java:267)
at
org
.apache
.openejb
.core
.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:
217)
at
org
.apache
.openejb
.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
at
org
.apache
.openejb
.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:286)
at $Proxy144.loadReason(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at
org
.jboss
.seam
.intercept.RootInvocationContext.proceed(RootInvocationContext.java:
31)
at org.jboss.seam.intercept.ClientSideInterceptor
$1.proceed(ClientSideInterceptor.java:76)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
56)
at
org
.jboss
.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
107)
at
org
.jboss
.seam
.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
at org.javassist.tmp.java.lang.Object_$
$_javassist_35.loadReason(Object_$$_javassist_35.java)
at t4.core.commons.reason.facade.test.ReasonFacadeServiceTest
$11.testComponents(ReasonFacadeServiceTest.java:428)
at org.jboss.seam.mock.AbstractSeamTest
$ComponentTest.run(AbstractSeamTest.java:162)
at
t4
.core
.commons
.reason
.facade
.test
.ReasonFacadeServiceTest.testLoadReason(ReasonFacadeServiceTest.java:
422)
Caused by:
org
.apache.openejb.persistence.EntityManagerAlreadyRegisteredException:
Another entity manager is already registered for this persistence unit
at org.apache.openejb.persistence.JtaEntityManagerRegistry
$ExtendedRegistry.addEntityManagers(JtaEntityManagerRegistry.java:191)
at org.apache.openejb.persistence.JtaEntityManagerRegistry
$ExtendedRegistry.access$100(JtaEntityManagerRegistry.java:169)
at
org
.apache
.openejb
.persistence
.JtaEntityManagerRegistry
.addEntityManagers(JtaEntityManagerRegistry.java:129)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.createEJBObject(StatefulContainer.java:
288)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.invoke(StatefulContainer.java:263)
at
org
.apache
.openejb
.core.ivm.EjbHomeProxyHandler.create(EjbHomeProxyHandler.java:270)
at
org
.apache
.openejb
.core.ivm.EjbHomeProxyHandler._invoke(EjbHomeProxyHandler.java:161)
at
org
.apache
.openejb
.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:286)
at $Proxy78.create(Unknown Source)
at
org
.apache
.openejb
.core
.ivm
.naming.BusinessLocalReference.getObject(BusinessLocalReference.java:
33)
at
org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:
150)
at
org
.apache
.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.java:
115)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at org.jboss.seam.Component.instantiateSessionBean(Component.java:
1367)
at org.jboss.seam.Component.instantiate(Component.java:1331)
at org.jboss.seam.Component.newInstance(Component.java:2084)
at org.jboss.seam.Component.getInstance(Component.java:1988)
at org.jboss.seam.Component.getInstance(Component.java:1950)
at org.jboss.seam.Component.getInstance(Component.java:1944)
at
org.jboss.seam.Component.getInstanceInAllNamespaces(Component.java:
2311)
at org.jboss.seam.Component.getValueToInject(Component.java:2263)
at org.jboss.seam.Component.injectAttributes(Component.java:1703)
at org.jboss.seam.Component.inject(Component.java:1521)
at
org
.jboss
.seam
.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.core
.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:
44)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.persistence
.EntityManagerProxyInterceptor
.aroundInvoke(EntityManagerProxyInterceptor.java:29)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org
.jboss
.seam
.persistence
.HibernateSessionProxyInterceptor
.aroundInvoke(HibernateSessionProxyInterceptor.java:31)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
107)
at
org
.jboss
.seam
.intercept
.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
at sun.reflect.GeneratedMethodAccessor58.invoke(Unknown Source)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.openejb.core.interceptor.ReflectionInvocationContext
$Invocation.invoke(ReflectionInvocationContext.java:158)
at
org
.apache
.openejb
.core
.interceptor
.ReflectionInvocationContext
.proceed(ReflectionInvocationContext.java:141)
at
org
.apache
.openejb
.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:67)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.businessMethod(StatefulContainer.java:490)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.invoke(StatefulContainer.java:267)
at
org
.apache
.openejb
.core
.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:
217)
at
org
.apache
.openejb
.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
at
org
.apache
.openejb
.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:286)
at $Proxy147.toVOReason(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at
org
.jboss
.seam
.intercept.RootInvocationContext.proceed(RootInvocationContext.java:
31)
at org.jboss.seam.intercept.ClientSideInterceptor
$1.proceed(ClientSideInterceptor.java:76)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
56)
at
org
.jboss
.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
107)
at
org
.jboss
.seam
.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
at org.javassist.tmp.java.lang.Object_$
$_javassist_38.toVOReason(Object_$$_javassist_38.java)
at
t4
.core
.commons
.reason
.facade
.ReasonFacadeServiceBean
.handleLoadReason(ReasonFacadeServiceBean.java:395)
at
t4
.core
.commons
.reason
.facade
.ReasonFacadeServiceBase.loadReason(ReasonFacadeServiceBase.java:703)
... 77 more
So it looks like a problem with entity manager. The
reasonFacadeService Seam component injects reasonInternalService and
reasonTransformer Seam components. The reasonTransformer component
itself injects a processDao component, which itself injecte
entityManager. And that's where the exception seems to occur ...
ProcessDao component injects entity manager this way :
@javax.persistence.PersistenceContext(unitName = "t4Seam", type =
javax.persistence.PersistenceContextType.EXTENDED)
protected javax.persistence.EntityManager emanager;
And persistence unit is configured this way :
<persistence
xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="t4Seam">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>java:/jdbc/t4Seam</jta-data-source>
<jar-file>../test-classes/lib/t4-core-utils-core.jar</jar-file>
<mapping-file>META-INF/orm-commons.xml</mapping-file>
<mapping-file>META-INF/orm-utils.xml</mapping-file>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update"/>
<property name="hibernate.show_sql" value="false"/>
<property name="hibernate.jdbc.batch_size" value="0"/>
</properties>
</persistence-unit>
</persistence>
I also noted that calling the processDao in my tests with the
following line ...
ProcessDao processDao = (ProcessDao) getInstance("processDao");
... caused the tests to run successful. But then I have this strange
stack trace on System.out :
ERROR - Passivation failed
java.io.NotSerializableException:
org.apache.openejb.persistence.JtaEntityManager
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1081)
at
java
.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
1375)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:
1347)
at
java
.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:
1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:
302)
at
org
.apache.openejb.util.PojoSerialization.write(PojoSerialization.java:
134)
at
org
.apache
.openejb.util.PojoSerialization.writeObject(PojoSerialization.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:
917)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:
1339)
at
java
.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:
1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1079)
at
java
.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
1375)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:
1347)
at
java
.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:
1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:
302)
at
org
.apache
.openejb
.core.stateful.SimplePassivater.passivate(SimplePassivater.java:70)
at
org
.apache
.openejb
.core.stateful.SimplePassivater.passivate(SimplePassivater.java:84)
at
org
.apache
.openejb.core.stateful.SimpleCache.storeEntries(SimpleCache.java:467)
at
org
.apache
.openejb.core.stateful.SimpleCache.processLRU(SimpleCache.java:408)
at
org
.apache.openejb.core.stateful.SimpleCache.checkIn(SimpleCache.java:
239)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.releaseInstance(StatefulContainer.java:
636)
at org.apache.openejb.core.stateful.StatefulContainer.access
$500(StatefulContainer.java:79)
at org.apache.openejb.core.stateful.StatefulContainer
$
SessionSynchronizationCoordinator
.afterCompletion(StatefulContainer.java:887)
at org.apache.openejb.core.transaction.JtaTransactionPolicy
$1.afterCompletion(JtaTransactionPolicy.java:155)
at
org
.apache
.geronimo
.transaction
.manager.TransactionImpl.afterCompletion(TransactionImpl.java:534)
at
org
.apache
.geronimo
.transaction
.manager.TransactionImpl.afterCompletion(TransactionImpl.java:526)
at
org
.apache
.geronimo
.transaction.manager.TransactionImpl.commit(TransactionImpl.java:326)
at
org
.apache
.geronimo
.transaction
.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:
245)
at
org
.apache
.openejb
.core
.transaction
.JtaTransactionPolicy.completeTransaction(JtaTransactionPolicy.java:
291)
at
org
.apache.openejb.core.transaction.TxRequired.commit(TxRequired.java:71)
at
org
.apache
.openejb
.core
.transaction.EjbTransactionUtil.afterInvoke(EjbTransactionUtil.java:
74)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.afterInvoke(StatefulContainer.java:
692)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.businessMethod(StatefulContainer.java:495)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.invoke(StatefulContainer.java:267)
at
org
.apache
.openejb
.core
.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:
217)
at
org
.apache
.openejb
.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
at
org
.apache
.openejb
.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:286)
at $Proxy154.findOrganizationalUnitMembers(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at
org
.jboss
.seam
.intercept.RootInvocationContext.proceed(RootInvocationContext.java:
31)
at org.jboss.seam.intercept.ClientSideInterceptor
$1.proceed(ClientSideInterceptor.java:76)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
56)
at
org
.jboss
.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
107)
at
org
.jboss
.seam
.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
at org.javassist.tmp.java.lang.Object_$
$_javassist_45.findOrganizationalUnitMembers(Object_$
$_javassist_45.java)
at
t4
.core.commons.organization.facade.test.OrganizationFacadeServiceTest
$12.testComponents(OrganizationFacadeServiceTest.java:681)
at org.jboss.seam.mock.AbstractSeamTest
$ComponentTest.run(AbstractSeamTest.java:162)
at
t4
.core
.commons
.organization
.facade
.test
.OrganizationFacadeServiceTest
.testFindOrganizationalUnitMembers
(OrganizationFacadeServiceTest.java:678)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:
580)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:478)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:607)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:874)
at
org
.testng
.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:
125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:
109)
at org.testng.TestRunner.runWorkers(TestRunner.java:689)
at org.testng.TestRunner.privateRun(TestRunner.java:566)
at org.testng.TestRunner.run(TestRunner.java:466)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:301)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:296)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:276)
at org.testng.SuiteRunner.run(SuiteRunner.java:191)
at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:808)
at org.testng.TestNG.runSuitesLocally(TestNG.java:776)
at org.testng.TestNG.run(TestNG.java:701)
at
org
.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:
77)
at
org
.apache
.maven
.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:
92)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org
.apache
.maven
.surefire
.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:334)
at
org
.apache
.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:980)
ERROR - An unexpected exception occured while writting the entries
to disk
org.apache.openejb.SystemException: The type
org.apache.openejb.persistence.JtaEntityManager is not serializable as
mandated by the EJB specification.:
org.apache.openejb.persistence.JtaEntityManager
at
org
.apache
.openejb
.core.stateful.SimplePassivater.passivate(SimplePassivater.java:75)
at
org
.apache
.openejb
.core.stateful.SimplePassivater.passivate(SimplePassivater.java:84)
at
org
.apache
.openejb.core.stateful.SimpleCache.storeEntries(SimpleCache.java:467)
at
org
.apache
.openejb.core.stateful.SimpleCache.processLRU(SimpleCache.java:408)
at
org
.apache.openejb.core.stateful.SimpleCache.checkIn(SimpleCache.java:
239)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.releaseInstance(StatefulContainer.java:
636)
at org.apache.openejb.core.stateful.StatefulContainer.access
$500(StatefulContainer.java:79)
at org.apache.openejb.core.stateful.StatefulContainer
$
SessionSynchronizationCoordinator
.afterCompletion(StatefulContainer.java:887)
at org.apache.openejb.core.transaction.JtaTransactionPolicy
$1.afterCompletion(JtaTransactionPolicy.java:155)
at
org
.apache
.geronimo
.transaction
.manager.TransactionImpl.afterCompletion(TransactionImpl.java:534)
at
org
.apache
.geronimo
.transaction
.manager.TransactionImpl.afterCompletion(TransactionImpl.java:526)
at
org
.apache
.geronimo
.transaction.manager.TransactionImpl.commit(TransactionImpl.java:326)
at
org
.apache
.geronimo
.transaction
.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:
245)
at
org
.apache
.openejb
.core
.transaction
.JtaTransactionPolicy.completeTransaction(JtaTransactionPolicy.java:
291)
at
org
.apache.openejb.core.transaction.TxRequired.commit(TxRequired.java:71)
at
org
.apache
.openejb
.core
.transaction.EjbTransactionUtil.afterInvoke(EjbTransactionUtil.java:
74)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.afterInvoke(StatefulContainer.java:
692)
at
org
.apache
.openejb
.core
.stateful.StatefulContainer.businessMethod(StatefulContainer.java:495)
at
org
.apache
.openejb
.core.stateful.StatefulContainer.invoke(StatefulContainer.java:267)
at
org
.apache
.openejb
.core
.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:
217)
at
org
.apache
.openejb
.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
at
org
.apache
.openejb
.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:286)
at $Proxy154.findOrganizationalUnitMembers(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at
org
.jboss
.seam
.intercept.RootInvocationContext.proceed(RootInvocationContext.java:
31)
at org.jboss.seam.intercept.ClientSideInterceptor
$1.proceed(ClientSideInterceptor.java:76)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
56)
at
org
.jboss
.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
at
org
.jboss
.seam
.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:
68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
107)
at
org
.jboss
.seam
.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
at org.javassist.tmp.java.lang.Object_$
$_javassist_45.findOrganizationalUnitMembers(Object_$
$_javassist_45.java)
at
t4
.core.commons.organization.facade.test.OrganizationFacadeServiceTest
$12.testComponents(OrganizationFacadeServiceTest.java:681)
at org.jboss.seam.mock.AbstractSeamTest
$ComponentTest.run(AbstractSeamTest.java:162)
at
t4
.core
.commons
.organization
.facade
.test
.OrganizationFacadeServiceTest
.testFindOrganizationalUnitMembers
(OrganizationFacadeServiceTest.java:678)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:
580)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:478)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:607)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:874)
at
org
.testng
.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:
125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:
109)
at org.testng.TestRunner.runWorkers(TestRunner.java:689)
at org.testng.TestRunner.privateRun(TestRunner.java:566)
at org.testng.TestRunner.run(TestRunner.java:466)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:301)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:296)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:276)
at org.testng.SuiteRunner.run(SuiteRunner.java:191)
at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:808)
at org.testng.TestNG.runSuitesLocally(TestNG.java:776)
at org.testng.TestNG.run(TestNG.java:701)
at
org
.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:
77)
at
org
.apache
.maven
.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:
92)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org
.apache
.maven
.surefire
.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:334)
at
org
.apache
.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:980)
Caused by: java.io.NotSerializableException:
org.apache.openejb.persistence.JtaEntityManager
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1081)
at
java
.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
1375)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:
1347)
at
java
.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:
1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:
302)
at
org
.apache.openejb.util.PojoSerialization.write(PojoSerialization.java:
134)
at
org
.apache
.openejb.util.PojoSerialization.writeObject(PojoSerialization.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:
917)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:
1339)
at
java
.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:
1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1079)
at
java
.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
1375)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:
1347)
at
java
.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:
1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:
1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:
302)
at
org
.apache
.openejb
.core.stateful.SimplePassivater.passivate(SimplePassivater.java:70)
... 67 more
I desperately try to understand what happens for a few days, so any
help will be very welcome ;)
Sorry for this long post, but not very easy to explain what happens
since my architecture is a bit complex :(
Regards,
Olivier