我已经在前面的question中将“信号中间事件”添加到人类任务中作为边界事件。JBPM - 捕捉中间信号有时会失败
有时信号处理成功,有时有时它是不是。 JBPM运行时只更新process-instance-info,不处理信号。
我使用StatefulKnowledgeSession.signalEvent(),它只是更新ProcessInstanceInfo在后端和事件不会取消正在进行
当前的活动可能是什么问题呢?与此“信号中间事件”相关的任何错误? 。
LOG:
08:34:38955 INFO [标准输出](HTTP - 0.0.0.0-8280-20)2013年3月13日08:34:38954 [HTTP - 0.0.0.0 -8280-20] DEBUG web.mvc.controller.SignalController - 接收到一个新的PROCESS信号..putProcessOnHOLD 08:34:38,966 INFO [stdout](http - 0.0.0.0-8280-20)2013-03-13 08 :34:38,966 [http - 0.0.0.0-8280-20] DEBUG org.drools.container.spring.beans.persistence.DroolsSpringTransactionManager - 当前TX名称(根据TransactionSynchronizationManager):core.service.impl.event.ExternalEventManagerImpl。 dispatchSignal 08:34:38,978 INFO [stdout](http - 0.0.0.0-8280-20)2013-03-13 08:34:38,978 [http - 0.0.0.0-8280-20] DEBUG org.drools。续ainer.spring.beans.persistence.DroolsSpringTransactionManager - 当前TX:o[email protected]3dda5edd 08:34:38,987 INFO [stdout](http - 0.0.0.0-8280-20)Hibernate:select processins0_ .InstanceId如InstanceId1_0_,processins0_.id如id1_0_,processins0_.lastModificationDate如lastModi3_1_0_,processins0_.lastReadDate如lastRead4_1_0_,processins0_.processId如processId1_0_,processins0_.processInstanceByteArray如processI6_1_0_,processins0_.startDate如startDate1_0_,processins0_.state如state1_0_,processins0_.OPTLOCK作为OPTLOCK1_0_来自ProcessInstanceInfo processins0_ where processins0_.InstanceId =? 08:34:39,014 INFO [stdout](http - 0.0.0.0-8280-20)Hibernate:update ProcessInstanceInfo set id =?,lastModificationDate = ?, lastReadDate = ?, processId =?,processInstanceByteArray =?,startDate =? ,状态=?,OPTLOCK =? InstanceId =?和OPTLOCK =?
环境:JBPM 5.4.0.Final时,JBoss 7.1.0.Final
人工任务处于相同状态(“保留”/“进行中”)。让我检查是否因为线程为@salaboy暗示 – 2013-03-12 09:59:14
我已更新日志 – 2013-03-13 05:03:58
问题仍然存在。我部署了应用程序在一个干净的环境中。信号使知识会话更新过程实例,但没有别的 – 2013-03-26 12:03:11