В нашем рабочем процессе BPMN с использованием jBPM 5.4.0.Final мы периодически сталкиваемся с проблемой, при которой следующий узел не всегда создается после завершения задачи.
Вот Ключевые наблюдения:
Задача выполнена успешно, но следующий узел иногда не запускается.
Проблема возникает спорадически, большую часть времени работает правильно, но при определенных условиях происходит сбой. .
Проблема специфична для этой пользовательской задачи в процессе BPMN.
При выполнении задачи не возникает никаких ошибок или исключений.
Проблема возникает чаще, когда рабочий процесс предполагает быстрое создание и выполнение задач в одном экземпляре процесса.
Мы подозреваем, что проблема заключается в следующем методе, где поток не входит в блок if. Это может быть связано с тем, что workItemId содержит предыдущий идентификатор workItem для ProcessInstance, что приводит к пропуску блока if и предотвращению создания следующего узла:
Код:< /strong>
org.jbpm.workflow.instance.node.WorkItemNodeInstance
public void workItemCompleted(WorkItem workItem) {
if ( workItemId == workItem.getId()
|| ( workItemId == -1 && getWorkItem().getId() == workItem.getId()) ) {
removeEventListeners();
triggerCompleted(workItem);
}
}
Последовательность кода: (необязательно)
at org.jbpm.workflow.instance.node.WorkItemNodeInstance.workItemCompleted
at org.jbpm.workflow.instance.node.WorkItemNodeInstance.signalEvent
at org.drools.persistence.jpa.processinstance.JPAWorkItemManager.completeWorkItem(JPAWorkItemManager.java:117)
at org.drools.command.runtime.process.CompleteWorkItemCommand.execute(CompleteWorkItemCommand.java:69)
at org.drools.command.runtime.process.CompleteWorkItemCommand.execute(CompleteWorkItemCommand.java:32)
at org.drools.command.impl.DefaultCommandService.execute(DefaultCommandService.java:36)
at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:373)
at org.drools.command.impl.CommandBasedStatefulKnowledgeSession$1.completeWorkItem(CommandBasedStatefulKnowledgeSession.java:151)
at com.tnq.workflow.engine.NimbleGenericHTWorkItemHandler$TaskCompletedHandler.handleCompletedTask(NimbleGenericHTWorkItemHandler.java:289)
at com.tnq.workflow.engine.NimbleGenericHTWorkItemHandler$TaskCompletedHandler.execute(NimbleGenericHTWorkItemHandler.java:243)
at org.jbpm.task.service.local.LocalTaskService$SimpleEventTransport.trigger(LocalTaskService.java:330)
at org.jbpm.task.event.MessagingTaskEventListener.triggerPayload(MessagingTaskEventListener.java:80)
at org.jbpm.task.event.MessagingTaskEventListener.handleEvent(MessagingTaskEventListener.java:99)
at org.jbpm.task.event.MessagingTaskEventListener.taskCompleted(MessagingTaskEventListener.java:118)
at org.jbpm.task.event.TaskEventSupport.fireTaskCompleted(TaskEventSupport.java:52)
at org.jbpm.task.service.TaskServiceSession.postTaskCompleteOperation(TaskServiceSession.java:577)
at org.jbpm.task.service.TaskServiceSession.taskOperation(TaskServiceSession.java:499)
at org.jbpm.task.service.local.LocalTaskService.complete(LocalTaskService.java:83)
at org.jbpm.task.service.local.LocalTaskService.completeWithResults(LocalTaskService.java:91)
Подробнее здесь: https://stackoverflow.com/questions/790 ... ue-in-jbpm
Периодическая проблема с рабочим процессом BPMN в jBPM ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1727279845
Anonymous
В нашем рабочем процессе BPMN с использованием jBPM 5.4.0.Final мы периодически сталкиваемся с проблемой, при которой следующий узел не всегда создается после завершения задачи.
Вот Ключевые наблюдения:
Задача выполнена успешно, но следующий узел иногда не запускается.
Проблема возникает спорадически, большую часть времени работает правильно, но при определенных условиях происходит сбой. .
Проблема специфична для этой пользовательской задачи в процессе BPMN.
При выполнении задачи не возникает никаких ошибок или исключений.
Проблема возникает чаще, когда рабочий процесс предполагает быстрое создание и выполнение задач в одном экземпляре процесса.
Мы подозреваем, что проблема заключается в следующем методе, где поток не входит в блок if. Это может быть связано с тем, что workItemId содержит предыдущий идентификатор workItem для ProcessInstance, что приводит к пропуску блока if и предотвращению создания следующего узла:
[b]Код:< /strong>
org.jbpm.workflow.instance.node.WorkItemNodeInstance
public void workItemCompleted(WorkItem workItem) {
if ( workItemId == workItem.getId()
|| ( workItemId == -1 && getWorkItem().getId() == workItem.getId()) ) {
removeEventListeners();
triggerCompleted(workItem);
}
}
Последовательность кода: (необязательно)[/b]
at org.jbpm.workflow.instance.node.WorkItemNodeInstance.workItemCompleted
at org.jbpm.workflow.instance.node.WorkItemNodeInstance.signalEvent
at org.drools.persistence.jpa.processinstance.JPAWorkItemManager.completeWorkItem(JPAWorkItemManager.java:117)
at org.drools.command.runtime.process.CompleteWorkItemCommand.execute(CompleteWorkItemCommand.java:69)
at org.drools.command.runtime.process.CompleteWorkItemCommand.execute(CompleteWorkItemCommand.java:32)
at org.drools.command.impl.DefaultCommandService.execute(DefaultCommandService.java:36)
at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:373)
at org.drools.command.impl.CommandBasedStatefulKnowledgeSession$1.completeWorkItem(CommandBasedStatefulKnowledgeSession.java:151)
at com.tnq.workflow.engine.NimbleGenericHTWorkItemHandler$TaskCompletedHandler.handleCompletedTask(NimbleGenericHTWorkItemHandler.java:289)
at com.tnq.workflow.engine.NimbleGenericHTWorkItemHandler$TaskCompletedHandler.execute(NimbleGenericHTWorkItemHandler.java:243)
at org.jbpm.task.service.local.LocalTaskService$SimpleEventTransport.trigger(LocalTaskService.java:330)
at org.jbpm.task.event.MessagingTaskEventListener.triggerPayload(MessagingTaskEventListener.java:80)
at org.jbpm.task.event.MessagingTaskEventListener.handleEvent(MessagingTaskEventListener.java:99)
at org.jbpm.task.event.MessagingTaskEventListener.taskCompleted(MessagingTaskEventListener.java:118)
at org.jbpm.task.event.TaskEventSupport.fireTaskCompleted(TaskEventSupport.java:52)
at org.jbpm.task.service.TaskServiceSession.postTaskCompleteOperation(TaskServiceSession.java:577)
at org.jbpm.task.service.TaskServiceSession.taskOperation(TaskServiceSession.java:499)
at org.jbpm.task.service.local.LocalTaskService.complete(LocalTaskService.java:83)
at org.jbpm.task.service.local.LocalTaskService.completeWithResults(LocalTaskService.java:91)
Подробнее здесь: [url]https://stackoverflow.com/questions/79023809/intermittent-bpmn-workflow-issue-in-jbpm[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия