Also relevant, here is the execution log.
Please, notice how there’s a failure closing the JDO persistenceManager and a
transaction abort afterwards.
23:02:09,854 [Native main DEBUG] UPDATE
"sales_backend"."ProductSupplierTerms" SET "purchasePrice"=<3.61> WHERE
"ProductSupplierTerms_ID"=<13524>
23:02:12,226 [PersistenceSession sales-Quartz-ThreadPool_Worker-1 ERROR]
close: failed to end transaction; continuing to avoid memory leakage
23:02:12,228 [Native main DEBUG] SELECT
'sales.dom.backend.ProductSupplierTerms' AS
NUCLEUS_TYPE,"A0"."purchasePrice","A0"."stock","A0"."ProductSupplierTerms_ID"
FROM "sales_backend"."ProductSupplierTerms" "A0" WHERE
"A0"."product_Product_ID_OID" = <13524> AND "A0"."supplier_Supplier_ID_OID" =
<0>
23:02:12,229 [PersistenceSession sales-Quartz-ThreadPool_Worker-1 ERROR]
close: failed to close JDO persistenceManager; continuing to avoid memory
leakage
23:02:12,240 [Native main DEBUG] SELECT
"B0"."gender","B0"."name","B0"."recommendedPrice","B0"."sku","B0"."Product_ID"
FROM "sales_backend"."ProductSupplierTerms" "A0" INNER JOIN
"sales_backend"."Product" "B0" ON "A0"."product_Product_ID_OID" =
"B0"."Product_ID" WHERE "A0"."ProductSupplierTerms_ID" = <13524>
23:02:12,243 [Native main DEBUG] SELECT
"B0"."name","B0"."Supplier_ID" FROM "sales_backend"."ProductSupplierTerms" "A0"
INNER JOIN "sales_backend"."Supplier" "B0" ON "A0"."supplier_Supplier_ID_OID" =
"B0"."Supplier_ID" WHERE "A0"."ProductSupplierTerms_ID" = <13524>
23:02:12,246 [Native main DEBUG] UPDATE
"sales_backend"."ProductSupplierTerms" SET "stock"=<49> WHERE
"ProductSupplierTerms_ID"=<13524>
23:02:12,254 [IsisTransaction main INFO ] abort transaction
IsisTransaction@666c5393[state=MUST_ABORT,commands=0]
23:02:12,261 [Native sales-Quartz-ThreadPool_Worker-1 DEBUG]
SELECT 'sales.dom.market.feeds.FeedSubmission' AS
NUCLEUS_TYPE,"A0"."completedProcessingDate","A0"."feedProcessingStatus","A0"."feedSubmissionId","A0"."feedType","A0"."isCompleted","A0"."startedProcessingDate","A0"."submittedDate","A0"."FeedSubmission_ID"
FROM "sales_backend"."FeedSubmission" "A0" WHERE ("A0"."isCompleted" IS NULL)
OR ((1=0) = "A0"."isCompleted")
23:02:12,268 [IsisSystem Thread-0 INFO ] shutting down system
23:02:12,298 [ServiceInitializer Thread-0 INFO ] calling @PreDestroy on
all domain services
23:02:12,306 [QuartzScheduler Thread-0 INFO ] Scheduler sales
Scheduler_$_sales-Scheduler shutting down.
23:02:12,308 [QuartzScheduler Thread-0 INFO ] Scheduler sales
Scheduler_$_sales-Scheduler paused.
23:02:12,311 [salesEmailServiceNOOP sales-Quartz-ThreadPool_Worker-1 INFO ]
salesEmailServiceNOOP
23:02:12,311 [PersistenceSession sales-Quartz-ThreadPool_Worker-1 ERROR]
close: failed to end transaction; continuing to avoid memory leakage
23:02:12,685 [QuartzScheduler Thread-0 INFO ] Scheduler sales
Scheduler_$_sales-Scheduler shutdown complete.
java.lang.IllegalStateException: No Session opened for this thread
23:02:12,932 [ObjectReflectorDefault Thread-0 INFO ] shutting down
org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault@383b24f9
at
org.apache.isis.core.runtime.system.context.IsisContext.getSession(IsisContext.java:399)
at
org.apache.isis.core.runtime.system.context.IsisContext.getPersistenceSession(IsisContext.java:427)
at
org.apache.isis.core.runtime.system.context.IsisContext.getTransactionManager(IsisContext.java:444)
at
org.apache.isis.core.runtime.system.IsisSystem.getTransactionManager(IsisSystem.java:422)
at
org.apache.isis.core.runtime.system.IsisSystem.shutdownServices(IsisSystem.java:361)
at
org.apache.isis.core.runtime.system.IsisSystem.shutdown(IsisSystem.java:337)
at
org.apache.isis.core.integtestsupport.IsisSystemForTest.shutdown(IsisSystemForTest.java:466)
at
org.apache.isis.core.integtestsupport.IsisSystemForTest.access$100(IsisSystemForTest.java:73)
at
org.apache.isis.core.integtestsupport.IsisSystemForTest$Builder$1.run(IsisSystemForTest.java:300)
On the stack trace for this second execution, same error than before, but for a
different entity:
javax.jdo.JDOUserException: Objeto con id
"13524[OID]salesvip.dom.backend.ProductSupplierTerms" es manejado por otro
ExecutionContext
at
org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:636)
at
org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:725)
at
org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:745)
at
org.apache.isis.objectstore.jdo.datanucleus.persistence.commands.DataNucleusCreateObjectCommand.execute(DataNucleusCreateObjectCommand.java:54)
at
org.apache.isis.core.runtime.system.persistence.PersistenceSession.executeCommands(PersistenceSession.java:1179)
at
org.apache.isis.core.runtime.system.persistence.PersistenceSession.execute(PersistenceSession.java:1173)
at
org.apache.isis.core.runtime.system.transaction.IsisTransaction.doFlush(IsisTransaction.java:500)
at
org.apache.isis.core.runtime.system.transaction.IsisTransaction.flush(IsisTransaction.java:446)
at
org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.flushTransaction(IsisTransactionManager.java:404)
at
org.apache.isis.core.runtime.persistence.internal.RuntimeContextFromSession$2.flush(RuntimeContextFromSession.java:167)
at
org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.flush(DomainObjectContainerDefault.java:331)
at
salesvip.dom.backend.SalesVIPEntity.persistAndFlush(SalesVIPEntity.java:39)
at
salesvip.dom.backend.ProductSupplierTerms.onModifyStock(ProductSupplierTerms.java:117)
at
salesvip.dom.backend.ProductSupplierTerms.modifyStock(ProductSupplierTerms.java:93)
at sun.reflect.GeneratedMethodAccessor67.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at
org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53)
at
org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:377)
at
org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:381)
at
org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod.setProperty(PropertySetterFacetViaModifyMethod.java:86)
at
org.apache.isis.core.metamodel.facets.properties.property.modify.PropertySetterFacetForDomainEventAbstract.setProperty(PropertySetterFacetForDomainEventAbstract.java:89)
at
org.apache.isis.core.runtime.transaction.facets.PropertySetterFacetWrapTransaction$1.execute(PropertySetterFacetWrapTransaction.java:59)
at
org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:174)
at
org.apache.isis.core.runtime.transaction.facets.PropertySetterFacetWrapTransaction.setProperty(PropertySetterFacetWrapTransaction.java:56)
at
org.apache.isis.core.metamodel.specloader.specimpl.OneToOneAssociationDefault.setValue(OneToOneAssociationDefault.java:212)
at
org.apache.isis.core.metamodel.specloader.specimpl.OneToOneAssociationDefault.set(OneToOneAssociationDefault.java:182)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleSetterMethodOnProperty(DomainObjectInvocationHandler.java:425)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:232)
at
org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
at
salesvip.dom.backend.ProductSupplierTerms_$$_jvst8a_d.setStock(ProductSupplierTerms_$$_jvst8a_d.java)
at salesvip.dom.backend.Product.updateSupplierStock(Product.java:275)
at sun.reflect.GeneratedMethodAccessor66.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at
org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
at
org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
at
org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
at
org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
at
org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
at
org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
at
org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
at
org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
at
salesvip.dom.backend.Product_$$_jvst8a_8.updateSupplierStock(Product_$$_jvst8a_8.java)
at
salesvip.dom.engel.EngelProductService.upsertProductFromEngel(EngelProductService.java:61)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel.lambda$0(UpsertAllProductsFromEngel.java:28)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel$$Lambda$1/1434151479.accept(Unknown
Source)
at java.util.ArrayList.forEach(ArrayList.java:1234)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel.upsertAllProductsFromEngel(UpsertAllProductsFromEngel.java:26)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel.execute(UpsertAllProductsFromEngel.java:21)
at
org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.executeChildIfNotAlready(FixtureScript.java:553)
at
org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.access$200(FixtureScript.java:252)
at
org.apache.isis.applib.fixturescripts.FixtureScript.run(FixtureScript.java:779)
at
org.apache.isis.applib.fixturescripts.FixtureScripts.runFixtureScript(FixtureScripts.java:391)
at
org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault.runFixtureScript(FixtureScriptsDefault.java:104)
at
salesvip.integtests.amazon.stocks.AmazonUpdateStocksServiceTests$UpdateAllStocksInMarketplace.equivalentResults(AmazonUpdateStocksServiceTests.java:136)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at
org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2$1.evaluate(JUnitRuleMockery2.java:146)
at
org.apache.isis.core.integtestsupport.ExceptionRecognizerTranslate$TranslationStatement.evaluate(ExceptionRecognizerTranslate.java:48)
at
org.apache.isis.core.integtestsupport.IntegrationTestAbstract$IsisTransactionRule$1.evaluate(IntegrationTestAbstract.java:226)
at
org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:239)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
NestedThrowablesStackTrace:
Objeto con id "13524[OID]salesvip.dom.backend.ProductSupplierTerms" es manejado
por otro ExecutionContext
org.datanucleus.exceptions.NucleusUserException: Objeto con id
"13524[OID]salesvip.dom.backend.ProductSupplierTerms" es manejado por otro
ExecutionContext
at
org.datanucleus.ExecutionContextImpl.findObjectProvider(ExecutionContextImpl.java:1268)
at
org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObjectAsValue(PersistableMapping.java:409)
at
org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObject(PersistableMapping.java:321)
at
org.datanucleus.store.rdbms.fieldmanager.ParameterSetter.storeObjectField(ParameterSetter.java:191)
at
org.datanucleus.state.AbstractStateManager.providedObjectField(AbstractStateManager.java:1460)
at
org.datanucleus.state.StateManagerImpl.providedObjectField(StateManagerImpl.java:120)
at
salesvip.dom.backend.ProductSupplierTermsStockUpdate.dnProvideField(ProductSupplierTermsStockUpdate.java)
at
salesvip.dom.backend.ProductSupplierTermsStockUpdate.dnProvideFields(ProductSupplierTermsStockUpdate.java)
at
org.datanucleus.state.StateManagerImpl.provideFields(StateManagerImpl.java:1170)
at
org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:292)
at
org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObjectInTable(RDBMSPersistenceHandler.java:162)
at
org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:138)
at
org.datanucleus.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3363)
at
org.datanucleus.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3339)
at
org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2066)
at
org.datanucleus.ExecutionContextImpl.persistObjectWork(ExecutionContextImpl.java:1909)
at
org.datanucleus.ExecutionContextImpl.persistObject(ExecutionContextImpl.java:1764)
at
org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:720)
at
org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:745)
at
org.apache.isis.objectstore.jdo.datanucleus.persistence.commands.DataNucleusCreateObjectCommand.execute(DataNucleusCreateObjectCommand.java:54)
at
org.apache.isis.core.runtime.system.persistence.PersistenceSession.executeCommands(PersistenceSession.java:1179)
at
org.apache.isis.core.runtime.system.persistence.PersistenceSession.execute(PersistenceSession.java:1173)
at
org.apache.isis.core.runtime.system.transaction.IsisTransaction.doFlush(IsisTransaction.java:500)
at
org.apache.isis.core.runtime.system.transaction.IsisTransaction.flush(IsisTransaction.java:446)
at
org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.flushTransaction(IsisTransactionManager.java:404)
at
org.apache.isis.core.runtime.persistence.internal.RuntimeContextFromSession$2.flush(RuntimeContextFromSession.java:167)
at
org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.flush(DomainObjectContainerDefault.java:331)
at
salesvip.dom.backend.SalesVIPEntity.persistAndFlush(SalesVIPEntity.java:39)
at
salesvip.dom.backend.ProductSupplierTerms.onModifyStock(ProductSupplierTerms.java:117)
at
salesvip.dom.backend.ProductSupplierTerms.modifyStock(ProductSupplierTerms.java:93)
at sun.reflect.GeneratedMethodAccessor67.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at
org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53)
at
org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:377)
at
org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:381)
at
org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod.setProperty(PropertySetterFacetViaModifyMethod.java:86)
at
org.apache.isis.core.metamodel.facets.properties.property.modify.PropertySetterFacetForDomainEventAbstract.setProperty(PropertySetterFacetForDomainEventAbstract.java:89)
at
org.apache.isis.core.runtime.transaction.facets.PropertySetterFacetWrapTransaction$1.execute(PropertySetterFacetWrapTransaction.java:59)
at
org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:174)
at
org.apache.isis.core.runtime.transaction.facets.PropertySetterFacetWrapTransaction.setProperty(PropertySetterFacetWrapTransaction.java:56)
at
org.apache.isis.core.metamodel.specloader.specimpl.OneToOneAssociationDefault.setValue(OneToOneAssociationDefault.java:212)
at
org.apache.isis.core.metamodel.specloader.specimpl.OneToOneAssociationDefault.set(OneToOneAssociationDefault.java:182)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleSetterMethodOnProperty(DomainObjectInvocationHandler.java:425)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:232)
at
org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
at
salesvip.dom.backend.ProductSupplierTerms_$$_jvst8a_d.setStock(ProductSupplierTerms_$$_jvst8a_d.java)
at salesvip.dom.backend.Product.updateSupplierStock(Product.java:275)
at sun.reflect.GeneratedMethodAccessor66.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at
org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
at
org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
at
org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
at
org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
at
org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
at
org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
at
org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
at
org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
at
org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
at
salesvip.dom.backend.Product_$$_jvst8a_8.updateSupplierStock(Product_$$_jvst8a_8.java)
at
salesvip.dom.engel.EngelProductService.upsertProductFromEngel(EngelProductService.java:61)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel.lambda$0(UpsertAllProductsFromEngel.java:28)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel$$Lambda$1/1434151479.accept(Unknown
Source)
at java.util.ArrayList.forEach(ArrayList.java:1234)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel.upsertAllProductsFromEngel(UpsertAllProductsFromEngel.java:26)
at
salesvip.fixture.engel.UpsertAllProductsFromEngel.execute(UpsertAllProductsFromEngel.java:21)
at
org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.executeChildIfNotAlready(FixtureScript.java:553)
at
org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.access$200(FixtureScript.java:252)
at
org.apache.isis.applib.fixturescripts.FixtureScript.run(FixtureScript.java:779)
at
org.apache.isis.applib.fixturescripts.FixtureScripts.runFixtureScript(FixtureScripts.java:391)
at
org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault.runFixtureScript(FixtureScriptsDefault.java:104)
at
salesvip.integtests.amazon.stocks.AmazonUpdateStocksServiceTests$UpdateAllStocksInMarketplace.equivalentResults(AmazonUpdateStocksServiceTests.java:136)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at
org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2$1.evaluate(JUnitRuleMockery2.java:146)
at
org.apache.isis.core.integtestsupport.ExceptionRecognizerTranslate$TranslationStatement.evaluate(ExceptionRecognizerTranslate.java:48)
at
org.apache.isis.core.integtestsupport.IntegrationTestAbstract$IsisTransactionRule$1.evaluate(IntegrationTestAbstract.java:226)
at
org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:239)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Thanks,
Oscar
> El 3 ene 2016, a las 22:46, Óscar Bou <[email protected]> escribió:
>
> Hi all.
>
> I’m implementing custom Quartz Jobs using as the base class literally the
> same “AbstractIsisQuartzJob” class described in [1].
>
>
>
> Copied directly from my Eclipse (not from [1]):
>
> public abstract class AbstractIsisQuartzJob implements Job {
>
> public static enum ConcurrentInstancesPolicy {
> SINGLE_INSTANCE_ONLY,
> MULTIPLE_INSTANCES
> }
>
> private final AbstractIsisSessionTemplate isisRunnable;
>
> private final ConcurrentInstancesPolicy concurrentInstancesPolicy;
> private boolean executing;
>
> public AbstractIsisQuartzJob(final AbstractIsisSessionTemplate
> isisRunnable) {
> this(isisRunnable, ConcurrentInstancesPolicy.SINGLE_INSTANCE_ONLY);
> }
>
> public AbstractIsisQuartzJob(
> final AbstractIsisSessionTemplate isisRunnable,
> final ConcurrentInstancesPolicy concurrentInstancesPolicy) {
> this.isisRunnable = isisRunnable;
> this.concurrentInstancesPolicy = concurrentInstancesPolicy;
> }
>
> /**
> * Sets up an {@link IsisSession} then delegates to the
> * {@link #doExecute(JobExecutionContext) hook}.
> */
> @Override
> public void execute(
> final JobExecutionContext context) throws JobExecutionException {
> final AuthenticationSession authSession = this.newAuthSession(context);
> try {
> if ((this.concurrentInstancesPolicy ==
> ConcurrentInstancesPolicy.SINGLE_INSTANCE_ONLY) &&
> this.executing) {
> return;
> }
> this.executing = true;
>
> this.isisRunnable.execute(authSession, context);
> } finally {
> this.executing = false;
> }
> }
>
> AuthenticationSession newAuthSession(
> final JobExecutionContext context) {
> final String user = this.getKey(context, SchedulerConstants.USER_KEY);
> final String rolesStr = this.getKey(context,
> SchedulerConstants.ROLES_KEY);
> final String[] roles = Iterables.toArray(
> Splitter.on(",").split(rolesStr), String.class);
> return new SimpleSession(user, roles);
> }
>
> @SuppressWarnings("static-method")
> String getKey(
> final JobExecutionContext context,
> final String key) {
> return context.getMergedJobDataMap().getString(key);
> }
> }
>
>
>
> This Quartz Job is invoked in the middle of a massive import executed from a
> Fixture Script.
>
>
> Problem is that I cannot determine the root cause, as seems to be some
> conflict between both Isis sessions …
>
>
> EXCEPTION THROWN
>
> Rerun
> sales.integtests.Market.stocks.MarketUpdateStocksServiceTests.UpdateAllStocksInMarketplace.equivalentResults
> equivalentResults(sales.integtests.Market.stocks.MarketUpdateStocksServiceTests$UpdateAllStocksInMarketplace)
> javax.jdo.JDOUserException: Objeto con id
> "14153[OID]sales.dom.backend.Product" es manejado por otro ExecutionContext
> at
> org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:636)
> at org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:363)
> at
> org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.getResults(PersistenceQueryFindUsingApplibQueryProcessor.java:117)
> at
> org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:57)
> at
> org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:40)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.processPersistenceQuery(PersistenceSession.java:500)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.access$000(PersistenceSession.java:153)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:461)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:458)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.findInstancesInTransaction(PersistenceSession.java:457)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.firstMatchingQuery(PersistenceSession.java:429)
> at
> org.apache.isis.core.runtime.persistence.internal.RuntimeContextFromSession$2.firstMatchingQuery(RuntimeContextFromSession.java:182)
> at
> org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.firstMatch(DomainObjectContainerDefault.java:670)
> at sales.dom.backend.Product.findTermsForSupplier(Product.java:302)
> at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.Product_$$_jvst8a_8.findTermsForSupplier(Product_$$_jvst8a_8.java)
> at sales.dom.backend.Product.findOrCreateSupplierTerms(Product.java:313)
> at sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.Product_$$_jvst8a_8.findOrCreateSupplierTerms(Product_$$_jvst8a_8.java)
> at sales.dom.backend.Product.updateSupplierStock(Product.java:274)
> at sun.reflect.GeneratedMethodAccessor66.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.Product_$$_jvst8a_8.updateSupplierStock(Product_$$_jvst8a_8.java)
> at
> sales.dom.Supplier.SupplierProductService.upsertProductFromSupplier(SupplierProductService.java:61)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.lambda$0(UpsertAllProductsFromSupplier.java:28)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier$$Lambda$1/1434151479.accept(Unknown
> Source)
> at java.util.ArrayList.forEach(ArrayList.java:1234)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.upsertAllProductsFromSupplier(UpsertAllProductsFromSupplier.java:26)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.execute(UpsertAllProductsFromSupplier.java:21)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.executeChildIfNotAlready(FixtureScript.java:553)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.access$200(FixtureScript.java:252)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript.run(FixtureScript.java:779)
> at
> org.apache.isis.applib.fixturescripts.FixtureScripts.runFixtureScript(FixtureScripts.java:391)
> at
> org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault.runFixtureScript(FixtureScriptsDefault.java:104)
> at
> sales.integtests.Market.stocks.MarketUpdateStocksServiceTests$UpdateAllStocksInMarketplace.equivalentResults(MarketUpdateStocksServiceTests.java:136)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at
> org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2$1.evaluate(JUnitRuleMockery2.java:146)
> at
> org.apache.isis.core.integtestsupport.ExceptionRecognizerTranslate$TranslationStatement.evaluate(ExceptionRecognizerTranslate.java:48)
> at
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract$IsisTransactionRule$1.evaluate(IntegrationTestAbstract.java:226)
> at
> org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:239)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
> NestedThrowablesStackTrace:
> Objeto con id "14153[OID]sales.dom.backend.Product" es manejado por otro
> ExecutionContext
> org.datanucleus.exceptions.NucleusUserException: Objeto con id
> "14153[OID]sales.dom.backend.Product" es manejado por otro ExecutionContext
> at
> org.datanucleus.ExecutionContextImpl.findObjectProvider(ExecutionContextImpl.java:1268)
> at
> org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObjectAsValue(PersistableMapping.java:409)
> at
> org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObject(PersistableMapping.java:321)
> at
> org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObject(PersistableMapping.java:300)
> at
> org.datanucleus.store.rdbms.sql.SQLStatementHelper.applyParametersToStatement(SQLStatementHelper.java:239)
> at
> org.datanucleus.store.rdbms.query.JDOQLQuery.performExecute(JDOQLQuery.java:607)
> at org.datanucleus.store.query.Query.executeQuery(Query.java:1841)
> at org.datanucleus.store.query.Query.executeWithMap(Query.java:1748)
> at org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:346)
> at
> org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.getResults(PersistenceQueryFindUsingApplibQueryProcessor.java:117)
> at
> org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:57)
> at
> org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:40)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.processPersistenceQuery(PersistenceSession.java:500)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.access$000(PersistenceSession.java:153)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:461)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:458)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.findInstancesInTransaction(PersistenceSession.java:457)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.firstMatchingQuery(PersistenceSession.java:429)
> at
> org.apache.isis.core.runtime.persistence.internal.RuntimeContextFromSession$2.firstMatchingQuery(RuntimeContextFromSession.java:182)
> at
> org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.firstMatch(DomainObjectContainerDefault.java:670)
> at sales.dom.backend.Product.findTermsForSupplier(Product.java:302)
> at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.Product_$$_jvst8a_8.findTermsForSupplier(Product_$$_jvst8a_8.java)
> at sales.dom.backend.Product.findOrCreateSupplierTerms(Product.java:313)
> at sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.Product_$$_jvst8a_8.findOrCreateSupplierTerms(Product_$$_jvst8a_8.java)
> at sales.dom.backend.Product.updateSupplierStock(Product.java:274)
> at sun.reflect.GeneratedMethodAccessor66.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.internalInvoke(ActionInvocationFacetForDomainEventAbstract.java:407)
> at
> org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:210)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:62)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction$1.execute(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:216)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.Product_$$_jvst8a_8.updateSupplierStock(Product_$$_jvst8a_8.java)
> at
> sales.dom.Supplier.SupplierProductService.upsertProductFromSupplier(SupplierProductService.java:61)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.lambda$0(UpsertAllProductsFromSupplier.java:28)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier$$Lambda$1/1434151479.accept(Unknown
> Source)
> at java.util.ArrayList.forEach(ArrayList.java:1234)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.upsertAllProductsFromSupplier(UpsertAllProductsFromSupplier.java:26)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.execute(UpsertAllProductsFromSupplier.java:21)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.executeChildIfNotAlready(FixtureScript.java:553)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.access$200(FixtureScript.java:252)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript.run(FixtureScript.java:779)
> at
> org.apache.isis.applib.fixturescripts.FixtureScripts.runFixtureScript(FixtureScripts.java:391)
> at
> org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault.runFixtureScript(FixtureScriptsDefault.java:104)
> at
> sales.integtests.Market.stocks.MarketUpdateStocksServiceTests$UpdateAllStocksInMarketplace.equivalentResults(MarketUpdateStocksServiceTests.java:136)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at
> org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2$1.evaluate(JUnitRuleMockery2.java:146)
> at
> org.apache.isis.core.integtestsupport.ExceptionRecognizerTranslate$TranslationStatement.evaluate(ExceptionRecognizerTranslate.java:48)
> at
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract$IsisTransactionRule$1.evaluate(IntegrationTestAbstract.java:226)
> at
> org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:239)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
>
>
>
> TRACE LOG
>
>
> 22:35:32,937 [Native main DEBUG] SELECT
> 'sales.dom.backend.ProductSupplierTerms' AS
> NUCLEUS_TYPE,"A0"."purchasePrice","A0"."stock","A0"."ProductSupplierTerms_ID"
> FROM "sales_backend"."ProductSupplierTerms" "A0" WHERE
> "A0"."product_Product_ID_OID" = <14153> AND "A0"."supplier_Supplier_ID_OID" =
> <0>
> 22:35:34,179 [Native sales-Quartz-ThreadPool_Worker-1 DEBUG]
> INSERT INTO "sales_backend"."ProductSupplierTerms"
> ("product_Product_ID_OID","purchasePrice","stock","supplier_Supplier_ID_OID")
> VALUES (<14153>,<null>,<0>,<0>)
> 22:35:34,575 [PersistenceSession sales-Quartz-ThreadPool_Worker-1 ERROR]
> close: failed to end transaction; continuing to avoid memory leakage
> 22:35:34,580 [Native main DEBUG] SELECT
> "A0"."purchasePrice","A0"."stock" FROM "sales_backend"."ProductSupplierTerms"
> "A0" WHERE "A0"."ProductSupplierTerms_ID" = <14153>
> 22:35:34,583 [Native main DEBUG] SELECT
> "A0"."purchasePrice","A0"."stock" FROM "sales_backend"."ProductSupplierTerms"
> "A0" WHERE "A0"."ProductSupplierTerms_ID" = <14153>
> 22:35:34,585 [Native main DEBUG] SELECT
> "B0"."gender","B0"."name","B0"."recommendedPrice","B0"."sku","B0"."Product_ID"
> FROM "sales_backend"."ProductSupplierTerms" "A0" INNER JOIN
> "sales_backend"."Product" "B0" ON "A0"."product_Product_ID_OID" =
> "B0"."Product_ID" WHERE "A0"."ProductSupplierTerms_ID" = <14153>
> 22:35:34,586 [Native main DEBUG] SELECT
> "B0"."name","B0"."Supplier_ID" FROM "sales_backend"."ProductSupplierTerms"
> "A0" INNER JOIN "sales_backend"."Supplier" "B0" ON
> "A0"."supplier_Supplier_ID_OID" = "B0"."Supplier_ID" WHERE
> "A0"."ProductSupplierTerms_ID" = <14153>
> 22:35:34,589 [Native main DEBUG] INSERT INTO
> "sales_backend"."ProductSupplierTermsPurchasePriceUpdate"
> ("dateTime","newPurchasePrice","oldPurchasePrice","productSupplierTerms_ProductSupplierTerms_ID_OID")
> VALUES (<2016-01-03 22:35:34.588>,<24.37>,<null>,<14153>)
> 22:35:34,589 [Native main DEBUG] UPDATE
> "sales_backend"."ProductSupplierTerms" SET "purchasePrice"=<24.37> WHERE
> "ProductSupplierTerms_ID"=<14153>
> 22:35:34,590 [PersistenceSession sales-Quartz-ThreadPool_Worker-1 ERROR]
> close: failed to close JDO persistenceManager; continuing to avoid memory
> leakage
> 22:35:34,592 [Native main DEBUG] SELECT
> 'sales.dom.backend.Supplier' AS NUCLEUS_TYPE,"A0"."name","A0"."Supplier_ID"
> FROM "sales_backend"."Supplier" "A0" WHERE "A0"."name" = <'Supplier'>
> 22:35:34,596 [ServiceInstantiator main WARN ] ... @PreDestroy method
> threw exception - continuing anyway
> java.lang.NullPointerException
> at
> org.apache.isis.objectstore.jdo.datanucleus.service.support.TimestampService.close(TimestampService.java:48)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53)
> at
> org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:47)
> at
> org.apache.isis.core.runtime.services.ServiceInstantiator.callPreDestroyIfPresent(ServiceInstantiator.java:277)
> at
> org.apache.isis.core.runtime.services.ServiceInstantiator$2.invoke(ServiceInstantiator.java:195)
> at
> org.apache.isis.objectstore.jdo.datanucleus.service.support.TimestampService_$$_jvst8a_5.__isis_preDestroy(TimestampService_$$_jvst8a_5.java)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.endRequestOnRequestScopeServices(IsisTransactionManager.java:331)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.endTransaction(IsisTransactionManager.java:514)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:218)
> at
> org.apache.isis.core.runtime.transaction.facets.ActionInvocationFacetWrapTransaction.invoke(ActionInvocationFacetWrapTransaction.java:59)
> at
> org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:363)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.handleActionMethod(DomainObjectInvocationHandler.java:625)
> at
> org.apache.isis.core.wrapper.handlers.DomainObjectInvocationHandler.invoke(DomainObjectInvocationHandler.java:260)
> at
> org.apache.isis.core.wrapper.proxy.ProxyCreator$1.invoke(ProxyCreator.java:72)
> at
> sales.dom.backend.SupplierRepository_$$_jvst8a_b.theSupplierSupplier(SupplierRepository_$$_jvst8a_b.java)
> at
> sales.dom.Supplier.SupplierProductService.upsertProductFromSupplier(SupplierProductService.java:61)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.lambda$0(UpsertAllProductsFromSupplier.java:28)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier$$Lambda$1/1434151479.accept(Unknown
> Source)
> at java.util.ArrayList.forEach(ArrayList.java:1234)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.upsertAllProductsFromSupplier(UpsertAllProductsFromSupplier.java:26)
> at
> sales.fixture.Supplier.UpsertAllProductsFromSupplier.execute(UpsertAllProductsFromSupplier.java:21)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.executeChildIfNotAlready(FixtureScript.java:553)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript$ExecutionContext.access$200(FixtureScript.java:252)
> at
> org.apache.isis.applib.fixturescripts.FixtureScript.run(FixtureScript.java:779)
> at
> org.apache.isis.applib.fixturescripts.FixtureScripts.runFixtureScript(FixtureScripts.java:391)
> at
> org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault.runFixtureScript(FixtureScriptsDefault.java:104)
> at
> sales.integtests.Market.stocks.MarketUpdateStocksServiceTests$UpdateAllStocksInMarketplace.equivalentResults(MarketUpdateStocksServiceTests.java:136)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at
> org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2$1.evaluate(JUnitRuleMockery2.java:146)
> at
> org.apache.isis.core.integtestsupport.ExceptionRecognizerTranslate$TranslationStatement.evaluate(ExceptionRecognizerTranslate.java:48)
> at
> org.apache.isis.core.integtestsupport.IntegrationTestAbstract$IsisTransactionRule$1.evaluate(IntegrationTestAbstract.java:226)
> at
> org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:239)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
> 22:35:34,607 [IsisTransaction main INFO ] abort transaction
> IsisTransaction@5212ac3a[state=MUST_ABORT,commands=0]
> 22:35:34,620 [IsisSystem Thread-0 INFO ] shutting down system
> 22:35:34,623 [ServiceInitializer Thread-0 INFO ] calling @PreDestroy on
> all domain services
> 22:35:34,633 [QuartzScheduler Thread-0 INFO ] Scheduler sales
> Scheduler_$_sales-Scheduler shutting down.
> 22:35:34,635 [QuartzScheduler Thread-0 INFO ] Scheduler sales
> Scheduler_$_sales-Scheduler paused.
> 22:35:34,633 [JobRunShell sales-Quartz-ThreadPool_Worker-1 ERROR]
> Job Market - Feeds.Update Completed Feeds threw an unhandled Exception:
> javax.jdo.JDOFatalUserException: Persistence Manager ya esta cerrado
> at
> org.datanucleus.api.jdo.JDOPersistenceManager.assertIsOpen(JDOPersistenceManager.java:2224)
> at
> org.datanucleus.api.jdo.JDOPersistenceManager.currentTransaction(JDOPersistenceManager.java:377)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.startTransaction(PersistenceSession.java:1212)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.startTransaction(IsisTransactionManager.java:287)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:171)
> at
> org.apache.isis.core.runtime.sessiontemplate.AbstractIsisSessionTemplate.doExecute(AbstractIsisSessionTemplate.java:62)
> at
> org.apache.isis.core.runtime.sessiontemplate.AbstractIsisSessionTemplate.execute(AbstractIsisSessionTemplate.java:39)
> at
> sales.dom.scheduler.AbstractIsisQuartzJob.execute(AbstractIsisQuartzJob.java:54)
> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
> at
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
> 22:35:34,636 [ErrorLogger sales-Quartz-ThreadPool_Worker-1 ERROR]
> Job (Market - Feeds.Update Completed Feeds threw an exception.
> org.quartz.SchedulerException: Job threw an unhandled exception. [See nested
> exception: javax.jdo.JDOFatalUserException: Persistence Manager ya esta
> cerrado]
> at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
> at
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
> Caused by: javax.jdo.JDOFatalUserException: Persistence Manager ya esta
> cerrado
> at
> org.datanucleus.api.jdo.JDOPersistenceManager.assertIsOpen(JDOPersistenceManager.java:2224)
> at
> org.datanucleus.api.jdo.JDOPersistenceManager.currentTransaction(JDOPersistenceManager.java:377)
> at
> org.apache.isis.core.runtime.system.persistence.PersistenceSession.startTransaction(PersistenceSession.java:1212)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.startTransaction(IsisTransactionManager.java:287)
> at
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:171)
> at
> org.apache.isis.core.runtime.sessiontemplate.AbstractIsisSessionTemplate.doExecute(AbstractIsisSessionTemplate.java:62)
> at
> org.apache.isis.core.runtime.sessiontemplate.AbstractIsisSessionTemplate.execute(AbstractIsisSessionTemplate.java:39)
> at
> sales.dom.scheduler.AbstractIsisQuartzJob.execute(AbstractIsisQuartzJob.java:54)
> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
> ... 1 more
> java.lang.IllegalStateException: No Session opened for this thread
> at
> org.apache.isis.core.runtime.system.context.IsisContext.getSession(IsisContext.java:399)
> at
> org.apache.isis.core.runtime.system.context.IsisContext.getPersistenceSession(IsisContext.java:427)
> at
> org.apache.isis.core.runtime.system.context.IsisContext.getTransactionManager(IsisContext.java:444)
> at
> org.apache.isis.core.runtime.system.IsisSystem.getTransactionManager(IsisSystem.java:422)
> at
> org.apache.isis.core.runtime.system.IsisSystem.shutdownServices(IsisSystem.java:361)
> at
> org.apache.isis.core.runtime.system.IsisSystem.shutdown(IsisSystem.java:337)
> at
> org.apache.isis.core.integtestsupport.IsisSystemForTest.shutdown(IsisSystemForTest.java:466)
> at
> org.apache.isis.core.integtestsupport.IsisSystemForTest.access$100(IsisSystemForTest.java:73)
> at
> org.apache.isis.core.integtestsupport.IsisSystemForTest$Builder$1.run(IsisSystemForTest.java:300)
> 22:35:35,043 [QuartzScheduler Thread-0 INFO ] Scheduler sales
> Scheduler_$_sales-Scheduler shutdown complete.
> 22:35:35,243 [ObjectReflectorDefault Thread-0 INFO ] shutting down
> org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault@1cdd6514
>
>
>
> Any ideas, please?
>
> Seems there is some problem regarding Isis session and/or transaction
> handling, but not sure how to determine it.
>
>
>
> Thanks in advance,
>
> Oscar
>
>
>
>
>
> [1]
> https://github.com/isisaddons/isis-module-command/blob/ef2aac512572b98a6edd24cef536a6bf11cf2807/README.md
>
> <https://github.com/isisaddons/isis-module-command/blob/ef2aac512572b98a6edd24cef536a6bf11cf2807/README.md>