JBPM: проблема с транзитивными зависимостями пользовательского обработчика рабочего элемента

Я новичок в jBPM. Я тестирую jBPM 7.32.0.Final.
Среда настроена установщиком (ant install.demo).

Мой вариант использования:

Я пытаюсь разработать и протестировать собственный обработчик рабочих элементов (как показано на странице https://www.youtube.com/watch?v=_XIZ0KRTahE), который использует драйвер oracle jdbc.
В консоли jbpm я создал: новое определение рабочего элемента (CustomTask), новый бизнес-процесс, использующий пользовательскую задачу, добавил обработчик рабочего элемента в проект, создал реализацию обработчика в Eclipse, загрузил артефакт в репозиторий и добавил зависимость артефакта в проект.

Проблема :

Простой артефакт без транзитивных зависимостей работает нормально. Проблемы возникают, когда я добавляю зависимость от драйвера jdbc, которую следует использовать в обработчике рабочего элемента.

Что я сделал для разрешения транзитивной зависимости:

С помощью консоли jbpm я загрузил в репозиторий еще один артефакт с файлом jar драйвера jdbc (ojdbc8.jar) и добавил зависимость артефакта обработчика рабочего элемента от артефакта драйвера jdbc. (путем редактирования pom.xml обработчика).

Наблюдаемое поведение:

  • #P5#
    #P6#
    #P7#
    #P8#
    #P9# #P10#
  • затем, когда я удаляю транзитивную зависимость из pom.xml в артефакте рабочего элемента и повторно развертываю проект (без перезапуска jbpm), неожиданно я могу запустить новый экземпляр, и он отлично работает !!!

  • #P12# <блочная цитата> #P13# #P14#

Наверное, я упускаю что-то важное. Может ли кто-нибудь направить меня к правильным шагам/процедуре? Пожалуйста, дайте мне знать, если потребуется дополнительная информация. Очень признателен.


person Čestmír Strmíska    schedule 06.03.2020    source источник
comment
вы нашли какое-нибудь решение для этого? у меня такая же проблема   -  person jmiguel77    schedule 29.01.2021
comment
У меня возникает та же проблема. Создайте java-проект с настраиваемым обработчиком рабочего элемента, добавьте зависимость (в моем случае activeMQ), и когда я пытаюсь его выполнить, он дает мне исключение class not found.   -  person Samuel Torga    schedule 11.05.2021


Ответы (1)


Не уверен, насколько это (не)правильное исправление, но добавление транзитивных зависимостей в качестве явных зависимостей для проекта позволяет серверу KIE компилировать/выполнять контейнер.

person Vlad L    schedule 20.05.2021