Поток вызовов на основе XML - альтернативы JBPM JPDL

У меня есть требование, где я должен прийти с дизайном для управления потоком выполнения кода через XML. Это своего рода государственная машина, где я должен перемещаться между штатами. Я использовал JPDL XML на JBPM 4, около 5 лет назад. Но похоже, что JPDL больше не доступен в последних версиях JBPM.

В основном я хочу что-то вроде ниже, (только смоделировано на основе JPDL)

<start-state name="request a purchase"> 
  <transition to="evaluating"/> 
</start-state>

<state name="evaluating"> <!-- Invokes a Java Class and based on the output make transition to next state-->
  <transition name="approve" to="purchase approved"/> 
  <transition name="disapprove" to="done"/> 
</state> 

<fork name="purchase approved"> 
  <transition to="decrement inventory" /> 
  <transition to="increment revenue" />
</fork>
.
.
.
<end-state name="done" />

Выше можно легко сделать с JBPM и JPDL, но в последней JBPM, без JPDL, я не уверен, как это сделать. Переход между состояниями основан на выводе класса Java (как, например, "оценивающее" состояние), и класс Java будет взаимодействовать с внешними системами. Нет взаимодействия с пользователем.

Мне нужно контролировать поток вызовов из XML, потому что это позволит нам интенсивно обрезать каждый сценарий, не касаясь кода Java. Я прошел через веб-потоки Activiti и Spring, но все еще не очень ясно, что вышеизложенное может быть достигнуто или нет с этим.

Не могли бы вы предложить некоторые подходящие рамки для вышеуказанного требования?

1 ответ

jBPM теперь использует спецификацию BPMN2, а не собственный проприетарный язык для определения процессов. Рассматривали ли вы чтение этой спецификации и использовать ее вместо этого?

Другие вопросы по тегам