Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-292

SingleSessionCommandService fails when Business Central is used via REST API

XMLWordPrintable

      Description of problem:

      It is not possible to use a repository and projects cloned/installed via REST API.

      After installation of a project via REST API:

      16:11:21,130 ERROR [org.kie.remote.services.rest.jaxb.DynamicJaxbContext] (http-localhost.localdomain/127.0.0.1:8080-8) Instance 2 of the DynamicJaxbContext created!
      16:11:21,294 ERROR [org.jboss.as.txn] (http-localhost.localdomain/127.0.0.1:8080-8) JBAS010152: APPLICATION ERROR: transaction still active in request with status 0

      >>>>>>> The first attempt to start a process via REST API:

      16:12:19,396 WARN [org.drools.persistence.SingleSessionCommandService] (http-localhost.localdomain/127.0.0.1:8080-10) Could not commit session: org.drools.persistence.SessionNotFoundException: Could not find session data for id 1
      at org.drools.persistence.SingleSessionCommandService.initExistingKnowledgeSession(SingleSessionCommandService.java:241) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.persistence.SingleSessionCommandService$TransactionInterceptor.execute(SingleSessionCommandService.java:516) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41) [drools-core-6.0.3-redhat-8.jar:6.0.3-redhat-8]
      at org.drools.persistence.jpa.OptimisticLockRetryInterceptor.execute(OptimisticLockRetryInterceptor.java:73) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:377) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.core.command.impl.CommandBasedStatefulKnowledgeSession.execute(CommandBasedStatefulKnowledgeSession.java:498) [drools-core-6.0.3-redhat-8.jar:6.0.3-redhat-8]
      at org.kie.remote.services.cdi.ProcessRequestBean.doKieSessionOperation(ProcessRequestBean.java:178) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.kie.remote.services.cdi.ProcessRequestBean$Proxy$$$_WeldClientProxy.doKieSessionOperation(ProcessRequestBean$Proxy$$$_WeldClientProxy.java) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.kie.remote.services.rest.RuntimeResource.startProcessInstance(RuntimeResource.java:401) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.kie.remote.services.rest.RuntimeResource.process_defId_start(RuntimeResource.java:105) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]

      >>>>>>> The second attempt to start a process via REST API:

      16:13:53,557 WARN [org.drools.persistence.SingleSessionCommandService] (http-localhost.localdomain/127.0.0.1:8080-10) Could not commit session: java.lang.NullPointerException
      at org.drools.persistence.SingleSessionCommandService$TransactionInterceptor.execute(SingleSessionCommandService.java:516) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41) [drools-core-6.0.3-redhat-8.jar:6.0.3-redhat-8]
      at org.drools.persistence.jpa.OptimisticLockRetryInterceptor.execute(OptimisticLockRetryInterceptor.java:73) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:377) [drools-persistence-jpa-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.drools.core.command.impl.CommandBasedStatefulKnowledgeSession.execute(CommandBasedStatefulKnowledgeSession.java:498) [drools-core-6.0.3-redhat-8.jar:6.0.3-redhat-8]
      at org.kie.remote.services.cdi.ProcessRequestBean.doKieSessionOperation(ProcessRequestBean.java:178) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.kie.remote.services.cdi.ProcessRequestBean$Proxy$$$_WeldClientProxy.doKieSessionOperation(ProcessRequestBean$Proxy$$$_WeldClientProxy.java) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.kie.remote.services.rest.RuntimeResource.startProcessInstance(RuntimeResource.java:401) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]
      at org.kie.remote.services.rest.RuntimeResource.process_defId_start(RuntimeResource.java:105) [kie-services-remote-6.0.3-redhat-6.jar:6.0.3-redhat-6]

      >>>>>>> See also

      I have a different problem when I clone the repository and install a project in Business Central. The REST request or any action in Business Central (e.g. start of a process) ends with:

      Process Instances failed to start: java.lang.NoSuchMethodError:org/drools/persistence/OrderedTransactionSynchronization.(Ljava/lang/Integer;Ljava/lang/String;)V

      However, I believe these are two problems which might have the same cause.

      Version-Release number of selected component (if applicable):

      How reproducible:

      Steps to Reproduce:
      1. Clone a repository via REST API
      2. Install a project from that repository via REST API
      3. Start a process via REST API
      4. See all the exception in the server log and on the client side

      Actual results:

      Expected results:

      Additional info:

              rzhang+1@redhat.com Cheng Zhang (Inactive)
              ibek1@redhat.com Ivo Bek
              Radovan Synek Radovan Synek (Inactive)
              Radovan Synek Radovan Synek (Inactive)
              Ivo Bek, Kris Verlaenen, Marek Baluch, Radovan Synek (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: