jBPM5 - рисование и проверка рабочего процесса
Чтобы нарисовать рабочий процесс, вы можете использовать любой из компонентов, доступных в палитре, как описано в статье выше. У всего рабочего процесса будет один запуск, но может быть несколько завершений.
С помощью снимков экрана я покажу вам, как создать рабочий процесс.
Здесь я открыл бланк rf или же bpmn файл

Чтобы добавить какое-либо событие, выберите конкретное событие из палитры компонентов и перетащите его вправо. Например, я выбрал начальное событие и перетащил его на правую сторону, а также на другой шлюз.

Теперь нужно соединить два компонента. Выберите поток последовательности и соедините два компонента.


Таким образом, вы можете перетащить компоненты в редактор и использовать последовательность операций для соединения различных компонентов. Просто нужно позаботиться о том, чтобы у некоторых компонентов было только одно входящее и одно исходящее соединение, и необходимо соответствующим образом настроить поток последовательности, чтобы создать значимый поток.
Во время рисования рабочего процесса нужно также установить некоторые свойства. Опубликуйте здесь все свойства, которые нужно установить. Я только что создал поток, но не имеет смысла смотреть на него в первый момент, поскольку я не установил никаких свойств в созданном рабочем процессе.

Как вы можете видеть выше, это пустой рабочий процесс без какого-либо описания как такового, и из созданного рабочего процесса ничего не разобрать.
Однако для дальнейшего объяснения у меня есть начальный компонент, а затем - расходящийся шлюз, и в зависимости от состояния расходящегося шлюза я выберу один способ и выполню некоторый код в задаче сценария, а затем завершу рабочий процесс. Поэтому мне нужно задать свойства для расходящегося шлюза, затем задачи сценария и сходящегося шлюза.
На этом этапе я также покажу вам, что в моем рабочем процессе есть некоторые ошибки, а позже покажу вам, как только я установлю свойства, в моем рабочем процессе не будет ошибок, следовательно, я покажу вам, как ПРОВЕРИТЬ созданный рабочий процесс.
Совет. Помните, что валидатор включен в Windows → Настройки → Проверка.
На скриншоте ниже показаны настройки в eclipse.


На скриншоте видно, что есть 4 ошибки. Первая ошибка говорит о том, что сценарий не выполняет никаких действий, а затем другая ошибка заключается в том, что для шлюза не определен тип. Следовательно, нам нужно удалить эти ошибки, чтобы запустить рабочий процесс.
Теперь мы установим свойства одно за другим и увидим, как ошибки исчезают.
Выберите первый шлюз (расходящийся) и нажмите «Свойства», затем нажмите «Тип» и выберите шлюз в соответствии с вашими требованиями.

После того, как вы выбрали шлюз, вам нужно выбрать ограничение.

Нажмите на кружок, отмеченный красным, вы увидите скриншот ниже.

Нажмите на редактирование и заполните данные, как показано на скриншоте -


Щелкните Импорт и импортируйте класс, с которым мы будем выполнять какую-либо операцию. На скриншоте мы импортировали POJO пассажира, который мы будем использовать в нашем примере.

Точно так же заполните детали для другого ограничения -

Теперь щелкните OK кнопка.

Снова нажмите OK. Теперь выберите задачу сценария и выполните тот же процесс, что и для расходящегося шлюза.
Мы только что добавили SOP (оператор печати), чтобы показать поток. В задаче сценария можно написать любой код java или mvel.

Аналогичным образом добавьте код для второго ограничения -

Наконец, вам нужно добавить тип шлюза для расходящегося шлюза.

Теперь сохраните файл рабочего процесса и перейдите к просмотру проблем. Все проблемы решатся.

Отсутствие ошибок в представлении проблемы предполагает, что в созданном рабочем процессе нет ошибки. Так создается и проверяется рабочий процесс в jBPM.