3 Replies Latest reply on Oct 21, 2011 3:21 AM by kevin wong

    Some issue about jbpm5.1 transaction

    kevin wong Newbie

      Hi, I'm a new fish , I'm running the jbpm-5.1.0.Final demo on db2 v9.7 fix4.

      When i created a new process instance I got the following exception on the broswer,

       

      org.jboss.resteasy.spi.UnhandledException: java.lang.RuntimeException: Could not commit session or rollback

          org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:319)

          org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:230)

          org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:206)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:360)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)

          javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

          org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)

          org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

      root cause

       

      java.lang.RuntimeException: Could not commit session or rollback

          org.drools.persistence.SingleSessionCommandService.rollbackTransaction(SingleSessionCommandService.java:317)

          org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:299)

          org.drools.command.impl.CommandBasedStatefulKnowledgeSession.startProcess(CommandBasedStatefulKnowledgeSession.java:222)

          org.jbpm.integration.console.CommandDelegate.startProcess(CommandDelegate.java:245)

          org.jbpm.integration.console.ProcessManagement.newInstance(ProcessManagement.java:80)

          org.jboss.bpm.console.server.FormProcessingFacade.startProcessWithUI(FormProcessingFacade.java:195)

          sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

          sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

          sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

          java.lang.reflect.Method.invoke(Method.java:597)

          org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:117)

          org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:260)

          org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:232)

          org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:166)

          org.jboss.resteasy.core.DispatcherUtilities.getJaxrsResponse(DispatcherUtilities.java:142)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)

          javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

          org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)

          org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

      root cause

       

      java.lang.RuntimeException: Unable to rollback transaction

          org.drools.persistence.jta.JtaTransactionManager.rollback(JtaTransactionManager.java:189)

          org.drools.persistence.SingleSessionCommandService.rollbackTransaction(SingleSessionCommandService.java:314)

          org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:299)

          org.drools.command.impl.CommandBasedStatefulKnowledgeSession.startProcess(CommandBasedStatefulKnowledgeSession.java:222)

          org.jbpm.integration.console.CommandDelegate.startProcess(CommandDelegate.java:245)

          org.jbpm.integration.console.ProcessManagement.newInstance(ProcessManagement.java:80)

          org.jboss.bpm.console.server.FormProcessingFacade.startProcessWithUI(FormProcessingFacade.java:195)

          sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

          sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

          sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

          java.lang.reflect.Method.invoke(Method.java:597)

          org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:117)

          org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:260)

          org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:232)

          org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:166)

          org.jboss.resteasy.core.DispatcherUtilities.getJaxrsResponse(DispatcherUtilities.java:142)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)

          javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

          org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)

          org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

      root cause

       

      java.lang.IllegalStateException: BaseTransaction.rollback - [com.arjuna.ats.internal.jta.transaction.arjunacore.notx] [com.arjuna.ats.internal.jta.transaction.arjunacore.notx] no transaction!

          com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.rollback(BaseTransaction.java:160)

          com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.rollback(BaseTransactionManagerDelegate.java:114)

          org.jboss.tm.usertx.client.ServerVMClientUserTransaction.rollback(ServerVMClientUserTransaction.java:170)

          org.drools.persistence.jta.JtaTransactionManager.rollback(JtaTransactionManager.java:183)

          org.drools.persistence.SingleSessionCommandService.rollbackTransaction(SingleSessionCommandService.java:314)

          org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:299)

          org.drools.command.impl.CommandBasedStatefulKnowledgeSession.startProcess(CommandBasedStatefulKnowledgeSession.java:222)

          org.jbpm.integration.console.CommandDelegate.startProcess(CommandDelegate.java:245)

          org.jbpm.integration.console.ProcessManagement.newInstance(ProcessManagement.java:80)

          org.jboss.bpm.console.server.FormProcessingFacade.startProcessWithUI(FormProcessingFacade.java:195)

          sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

          sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

          sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

          java.lang.reflect.Method.invoke(Method.java:597)

          org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:117)

          org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:260)

          org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:232)

          org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:166)

          org.jboss.resteasy.core.DispatcherUtilities.getJaxrsResponse(DispatcherUtilities.java:142)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)

          org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)

          org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)

          javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

          org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)

          org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

      note The full stack trace of the root cause is available in the JBoss Web/2.1.3.GA logs.

       

       

      I didn't find any record in PROCESSINSTANCEINFO table, but I saw a new instance has been created in the web page. Is this just a problem in the demo? or it's a transaction control bug in jbpm5.1?

       

      I resolve this problem by extend the length of processinstancebytearray colum in table PROCESSINSTANCEINFO from 255 to 500.But I still worry about this is a bug relate to jbpm core part.Could any one tell me about your experence in the project implementation, is this a serious problem?

       

      Another question is , if i wanna integrate the jbpm to my project, is there  a stable database script that could  create the tables jbpm require on db2 v9?Thanks.