Управление использованием пользовательского кода в Camunda Modeller
Я намерен использовать Camunda для моего продукта. В то время как все возможности камунды соответствуют моим потребностям, у меня есть опасения по поводу контролируемого использования камунды. Ниже приведены мои потребности в моделировании
- Можно ли создавать пользовательские задачи для конкретного домена, которые я могу просто перетащить во время моделирования. Должна быть возможность определить пользовательские свойства, необходимые для этого пользовательского состояния.
- Могу ли я каким-то образом контролировать / предотвращать использование собственного кода Java / сценариев в процессе моделирования человека. Я хочу ограничить использование только моих пользовательских задач, чтобы у нас не было много разбросанного кода по процессам.
Могут ли эксперты поделиться мнениями для достижения этих целей?
1 ответ
Недавно Camunda Modeler (я использую выпуск 1.4.0, опубликованный в октябре 2016 года) был расширен, чтобы разрешить установку шаблона json, которая может удовлетворить все ваши потребности (если я правильно их понимаю) или, по крайней мере, большинство из них.
Вы можете найти документацию по созданию шаблонов здесь. Документация находится в стадии разработки, но то, что уже опубликовано, я думаю, это вполне понятно. Вкратце вы должны
- перечислите все элементы, которые вы хотите настроить (пользовательские задачи, общие задачи, служебные задачи, слушатели, ссылки и т. д.)
- узнать представление json (объяснено в краткой документации) каждого элемента
- вставьте все jsoned элементы в файл (например: myElements.json)
- поместите файл в определенную папку modeler (см. ниже)
- закройте и перезапустите моделер
Например, если вы установили моделер в C:\Tools\camunda-modeler\
папка для публикации файла будет C:\Tools\camunda-modeler\resources\element-templates
(обратите внимание, что ресурсы уже будут присутствовать, а элементы-шаблоны - нет; их придется создавать).
Если все будет в порядке, моделлер запустится без каких-либо ошибок, и вы найдете новый селектор выпадающего списка на правой панели (как указано в документации) для всех элементов, для которых был определен шаблон. Как правило, вы должны классифицировать каждый шаблон как пользовательскую задачу или задачу службы, или как общую задачу и т. Д., Так что когда вы хотите использовать ее, вы должны начинать с универсального элемента. Например, если вы готовите в файле json 2 шаблоны для пользовательских задач, скажем, userTask1 и userTask2, если вы хотите вставить в свой новый процесс userTask1, вам нужно
- подобрать пустую пользовательскую задачу
- и выберите из селектора шаблона элемента справа голосовой userTask1, чтобы пустое пользовательское задание быстро стало userTask1 (со всеми моими пользовательскими свойствами с моими значениями по умолчанию)
- вот и все
Подводя итог, вы можете создавать шаблоны с пользовательским идентификатором и именем (редактируемые), с пользовательскими свойствами (редактируемыми или нет, или даже скрытыми), с возможными параметрами ввода / вывода. Таким образом, у вас могут быть свойства значений по умолчанию, а также задачи с упрощенным выбором или вообще без выбора.
Вы можете найти хорошие начальные примеры для создания собственных шаблонов в этом GIT-репозитории. Надеюсь, этого достаточно, чтобы понять.