Редактор BPMN
Используйте OpenBPM BPMN Designer для редактирования диаграмм BPMN в IntelliJ IDEA. Конструктор BPMN открывается автоматически при открытии существующего файла .bpmn. Если вы создаёте новую диаграмму через OpenBPM Studio, она также автоматически откроется в Конструкторе.
Интерфейс конструктора BPMN состоит из следующих элементов:
Холст (Canvas) |
Рабочая область для создания диаграммы процесса. |
|
Палитра BPMN (BPMN Palette) |
(1) |
Палитра BPMN содержит полный набор элементов для построения диаграмм BPMN. |
Действия процесса (Process Actions) |
(2) |
Панель доступных действий для процесса. |
Режимы редактора (Editor Modes) |
(3) |
Панель выбора режима просмотра. Доступно три режима: только XML, XML и модель, только модель. |
Инспектор BPMN (BPMN Inspector) |
(4) |
Панель инспектора отображает атрибуты выбранного элемента и позволяет их редактировать. |
Кнопка видимости (Visibility Button) |
(5) |
Переключатель отображения панели инспектора. |
Редактор BPMN
Редактор BPMN позволяет создавать процессы непосредственно в среде IDE.
|
Функция запуска браузера JCEF в отдельном процессе была реализована в IntelliJ IDEA 2025.1+ для повышения стабильности (чтобы проблемы с браузером не влияли на основной процесс IDEA). Однако в настоящее время существует ряд нерешённых проблем, мешающих корректной работе JCEF. OpenBPM Studio по умолчанию отключает этот параметр. Это необходимая мера для стабильной работы JCEF до выхода соответствующего патча от JetBrains. Настройка доступна в разделе Settings → Language & Frameworks → OpenBPM → Enable JCEF in separate process. |
Основные операции
Добавить элемент |
Два способа:
|
Изменить тип элемента |
|
Изменить цвет заливки элемента |
|
Удалить элемент |
|
Панель свойств (BPMN Inspector)
Панель свойств позволяет изменять параметры выбранного элемента диаграммы. Если элемент не выбран, отображаются свойства процесса.
Поиск |
(1) |
Поиск атрибута по имени; при нажатии на значок отображается история поиска. |
Ссылка |
(2) |
Открывает диалог редактирования многострочного текста. Если текст уже задан, первая строка отображается как ссылка. |
|
(3) |
Открывает выпадающий список доступных значений. |
|
(3), (4) |
Открывает диалог настройки свойства (Inputs, Outputs, Field injection и т.д.) или мастер генерации элемента (Java Delegate, Execution Listeners и т.п.) |
|
(3) |
Переход к коду. |
Выбор пользовательской формы / DMN / Java Delegate из выпадающего списка
Инспектор BPMN позволяет выбирать существующие формы, таблицы и классы проекта из соответствующих выпадающих списков в свойствах.
Пользовательская форма |
|
DMN |
|
Java Delegate |
|
Генерация Task Listener / Execution Listener
OpenBPM Studio позволяет генерировать шаблоны классов Task Listener и Execution Listener.
Шаг 1. Выберите элемент на диаграмме процесса
Шаг 2. Нажмите значок + в поле Execution Listeners или Task Listeners (для User Task)
Task Listener |
Execution Listener |
|
|
Шаг 3. Укажите значение параметра Event:
Task Listener |
Assignment |
Событие возникает, когда задача назначается пользователю или группе. Используется для отправки уведомлений или логирования назначения. |
Create |
Генерируется после создания экземпляра задачи. Применяется для инициализации переменных, установки сроков или подготовки данных. |
|
Complete |
Вызывается при завершении задачи пользователем. Используется для постобработки: обновления данных, запуска следующих шагов или логирования результатов. |
|
Delete |
Возникает при удалении задачи (например, при прерывании процесса). Применяется для освобождения ресурсов или отмены связанных действий. |
|
Execution Listener |
Start |
Срабатывает при запуске элемента процесса (например, начало процесса, активности или перехода). Выполняет инициализацию переменных или логирование старта. |
End |
Срабатывает при завершении элемента процесса (активности или всего процесса). Используется для очистки ресурсов, фиксации результатов или обновления статусов. |
|
Take |
Активируется при прохождении по потоку последовательности (transition). Применяется для отслеживания пути выполнения процесса или проверки условий перехода. |
Шаг 4. Укажите тип создаваемого Task Listener / Event Listener:
Java class |
Прямое указание класса, реализующего интерфейс |
Expression |
Выражение, выполняемое при наступлении события. В объект можно передать |
Delegate expression |
Ссылка на бин (например, Spring Bean), реализующий интерфейс |
Если выбран тип Expression, появляется поле для ввода выражения. Если выбран Java class или Delegate expression, доступны действия:
-
Выбор существующего класса из выпадающего списка (
vзначок) -
Создание нового класса (
+значок)
Нажатие + вызывает мастер создания нового Execution Listener / Task Listener:
Class Name |
Имя создаваемого класса |
Package |
Пакет, в который будет помещён сгенерированный класс |
Нажатие кнопки OK создаёт класс в указанном пакете, а поле Listener Class в диалоге New Execution Listener (или Task Listener) заполняется автоматически.
Генерация Java Delegate
Инспектор BPMN позволяет вызвать мастер для генерации класса Java Delegate.
-
Выберите Service Task на диаграмме
-
Установите Implementation → Task Type в значение Java Class
-
Кликните в поле Class, чтобы отобразить элементы управления
-
Нажмите значок
+для вызова диалога генерации класса Java Delegate
Class Name |
Имя создаваемого класса |
Package |
Пакет, в который будет помещён сгенерированный класс |
После нажатия OK сгенерированный класс откроется в редакторе кода.
Развёртывание
Редактор BPMN позволяет развернуть процесс на удалённом движке Camunda/Operaton. Чтобы вызвать мастер развёртывания, нажмите на значок ракеты на панели инструментов редактора. Необходимо наличие корректно настроенного подключения к внешнему движку.
Deployment name |
Уникальное имя для идентификации пакета развёртывания. Позволяет легко находить и администрировать конкретные версии процессов. |
Enable duplicate filtering |
Фильтрация на уровне отдельных файлов. Пропускает повторное развёртывание неизменённых ресурсов (например, диаграмм BPMN). Экономит место в базе данных, предотвращая создание дублей. |
Deploy changed only |
Фильтрация на уровне всего пакета. Если ни один файл не изменён, операция полностью пропускается. Обеспечивает идемпотентность, исключая избыточное создание версий процесса. |
Deployment source |
Источник, из которого инициировано развёртывание (например, "OpenBPM Studio"). Используется для аудита и отслеживания происхождения развёртываний. |
Tenant ID |
Идентификатор арендатора в многопользовательской архитектуре. Позволяет изолировать процессы и данные различных клиентов или подразделений в одном кластере Camunda. |

