我遇到以下错误,但仅在我的应用程序由于其他错误而崩溃之后。所以,我想这些错误是有联系的。但第一个很奇怪:
原因:org.jbpm.task.service.PermissionDeniedException:用户 '[User:'renauds']' 由于 org.jbpm.task 上没有“当前状态”匹配,无法对任务 id 7 执行操作“恢复” .service.TaskServiceSession.evalCommand(TaskServiceSession.java:311) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] at org.jbpm.task.service.TaskServiceSession.taskOperation(TaskServiceSession .java:426) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 org.jbpm.task.service.local.LocalTaskService.resume(LocalTaskService.java:264) [ jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 com.st.ams.task.management.TaskManager.resumeTask(TaskManager.java:320) [类:]
崩溃后,一切都很好,恢复过程可用,可以一直持续到结束。但所有其他新进程崩溃。我尝试重新部署应用程序,重新启动服务器,更改隔离级别等等,但没有任何效果。唯一的解决方案是删除所有表并重建数据库,然后所有进程再次运行。
这是阻止我的错误的堆栈跟踪:
17:02:09,370 INFO [stdout] (http--127.0.0.1-8080-5) 休眠:17:02:09,370 INFO [stdout] (http--127.0.0.1-8080-5) 插入 17:02:09,371 INFO [stdout] (http--127.0.0.1-8080-5) 到 17:02:09,371 INFO [stdout] (http--127.0.0.1-8080-5)
PeopleAssignments_PotOwners 17:02:09,371 INFO [stdout] (http --127.0.0.1-8080-5) (task_id, entity_id) 17:02:09,371 INFO [stdout] (http--127.0.0.1-8080-5) 值 17:02:09,372 INFO [stdout] (http-- 127.0.0.1-8080-5) (?, ?)17:02:09,380 WARN [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (http--127.0.0.1-8080-5) SQL 错误:1452,SQLState:23000 17:02:09,380 错误 [org.hibernate. engine.jdbc.spi.SqlExceptionHelper] (http--127.0.0.1-8080-5) 无法添加或更新子行:外键约束失败 (
jbpm_test
.peopleassignments_potowners
, CONSTRAINTFK1EE418D2C122ED2
FOREIGN KEY (entity_id
) REFERENCESorganizationalentity
(id
) ON DELETE NO ACTION ON UPDATE CASCADE) 17:02:09,383 WARN [com.arjuna.ats.arjuna] (http--127.0.0.1-8080-5) ARJUNA012125: TwoPhaseCoordinator.beforeCompletion - SynchronizationImple< 0:ffff0a838a14:-384e4b5d:516820a6:25d 失败, org.hibernate.engine.transaction.synchronization.internal.RegisteredSynchronization@14db649:javax.persistence.PersistenceException:org.hibernate.exception.ConstraintViolationException:无法添加或更新子行:外键约束失败(
jbpm_test
。peopleassignments_potowners
,CONSTRAINTFK1EE418D2C122ED2
FOREIGN KEY(entity_id
)参考organizationalentity
(id
) ON DELETE NO ACTION ON UPDATE CASCADE) at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1361) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final] at org.hibernate。 ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1289) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final] at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1295) [hibernate -entitymanager-4.0.1.Final.jar:4.0.1.Final] 在 org.hibernate.ejb.AbstractEntityManagerImpl$CallbackExceptionMapperImpl.mapManagedFlushFailure(AbstractEntityManagerImpl.java:1481) [hibernate-entitymanager-4.0.1.Final.jar:4.0 .1.Final] 在 org.hibernate.engine.transaction.synchronization.internal.SynchronizationCallbackCoordinatorImpl。beforeCompletion(SynchronizationCallbackCoordinatorImpl.java:109) [hibernate-core-4.0.1.Final.jar:4.0.1.Final] 在 org.hibernate.engine.transaction.synchronization.internal.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:53) [hibernate-core-4.0.1.Final.jar:4.0.1.Final] 在 com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76) 在 com.arjuna.ats .arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:273) 在 com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:93) 在 com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction .java:164) 在 com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:第1165章.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:167) 在 org.drools.persistence.jta.JtaTransactionManager.commit(JtaTransactionManager.java:179) [drools-persistence-jpa-5.5.0.Final.jar :5.5.0.Final] 在 org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:376) [drools-persistence-jpa-5.5.0.Final.jar:5.5.0.Final] 在 org.drools。 command.impl.CommandBasedStatefulKnowledgeSession$1.abortWorkItem(CommandBasedStatefulKnowledgeSession.java:156) [drools-core-5.5.0.Final.jar:5.5.0。最终] 在 org.jbpm.process.workitem.wsht.GenericHTWorkItemHandler$TaskCompletedHandler.handleCompletedTask(GenericHTWorkItemHandler.java:276) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 org .jbpm.process.workitem.wsht.GenericHTWorkItemHandler$TaskCompletedHandler.execute(GenericHTWorkItemHandler.java:234) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] at org.jbpm.task .service.local.LocalTaskService$SimpleEventTransport.trigger(LocalTaskService.java:329) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] at org.jbpm.task.event.MessagingTaskEventListener .triggerPayload(MessagingTaskEventListener.java:76) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] at org.jbpm.task.event.MessagingTaskEventListener.handleEvent(MessagingTaskEventListener.java:92 ) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 org.jbpm.task.event.MessagingTaskEventListener.taskCompleted(MessagingTaskEventListener.java:109) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.最终] 在 org.jbpm.task.event.TaskEventSupport.fireTaskCompleted(TaskEventSupport.java:49) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 org.jbpm.task .service.TaskServiceSession.postTaskCompleteOperation(TaskServiceSession.java:569) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] at org.jbpm.task.service.TaskServiceSession.taskOperation(TaskServiceSession .java:495) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 org.jbpm.task.service.local.LocalTaskService.complete(LocalTaskService.java:83) [ jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 org.jbpm.task.service.local.LocalTaskService。completeWithResults(LocalTaskService.java:91) [jbpm-human-task-core-5.4.0.Final.jar:5.4.0.Final] 在 com.st.ams.task.management.TaskManager.completeTask(TaskManager.java: 295)[类:]
jbpm 是否有可能在事务之外锁定表?