2014-10-30 73 views
0

我正在使用jBPM5,并且我配置了Bitronix事务管理器(BTM)作为事务管理器供jBPM进程持久性单元使用。无法提交会话或回滚

从过去的两周一切正常,但突然它开始与以下异常失败,这导致我重新启动应用程序服务器。重新启动后,所有工作正常。

异常堆栈跟踪:

com.xxx.jbpm.workflow.exception.WorkflowException: Could not commit session or rollback 
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:97) 
    at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:334) 
    at com.xxx.platform.eventpublisher.xxxEventPublisher.publish(xxxEventPublisher.java:16) 
    at com.xxx.xxx.wsserver.impl.dlp.DLPCheckTask.publish(DLPCheckTask.java:97) 
    at com.xxx.xxx.wsserver.impl.dlp.DLPCheckTask.run(DLPCheckTask.java:56) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:722) 
Caused by: java.lang.RuntimeException: Could not commit session or rollback 
    at org.drools.persistence.SingleSessionCommandService.rollbackTransaction(SingleSessionCommandService.java:406) 
    at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:381) 
    at org.drools.command.impl.CommandBasedStatefulKnowledgeSession.startProcessInstance(CommandBasedStatefulKnowledgeSession.java:237) 
    at com.xxx.jbpm.workflow.services.WorkflowServiceHandler.startWorkflow(WorkflowServiceHandler.java:71) 
    at com.xxx.jbpm.workflow.impl.WorkflowManagerImpl.startWorkflow(WorkflowManagerImpl.java:46) 
    ... 12 more 
Caused by: java.lang.RuntimeException: Unable to rollback transaction 
    at org.drools.persistence.jta.JtaTransactionManager.rollback(JtaTransactionManager.java:197) 
    at org.drools.persistence.SingleSessionCommandService.rollbackTransaction(SingleSessionCommandService.java:402) 
    ... 16 more 
Caused by: java.lang.IllegalStateException: no transaction started on this thread 
    at bitronix.tm.BitronixTransactionManager.rollback(BitronixTransactionManager.java:150) 
    at org.drools.persistence.jta.JtaTransactionManager.rollback(JtaTransactionManager.java:191) 
    ... 17 more 

我们正在发起交易/工作流程的一个良好的数额和使用的jBPM人任务核5.5.0.Final的jBPM的库版本,jBPM的-BPMN2,jbpm-持久性JPA。

请问有人能帮我指出正确的方向吗?

非常感谢, Mayank

回答

0

有交易的回滚过程中的问题。但是,回滚本身是由另一个问题引起的(可能是与启动事务相关的问题)。但是,这个例外没有在这里显示。在这之前是否有任何异常记录?如果不是,你可以尝试调试SingleSessionCommandService.rollbackTransaction操作,这样你可以看到哪个异常触发了回滚?

一些帮助哪个版本正是你正在使用将是有益的,例如在最新版本的回退的原因应该已经登录: https://github.com/droolsjbpm/drools/blob/master/drools-persistence-jpa/src/main/java/org/drools/persistence/SingleSessionCommandService.java#L364

+1

嗨@Kris,我使用所有的图书馆,其与jBPM5(* .5.5.0.Final.jar)相关。我有点晕头转向,发现jBPM 5.2库中存在一些错误。发布[链接](https://issues.jboss.org/browse/JBPM-3934)。不确定是否在5.5.0版本的最终版本中得到修复。 – Mayank 2015-02-03 13:28:31