Статьи

Новый DMN Editor Preview

Workbench 7.13.0.Final был выпущен во вторник, 16 октября, и эта версия содержит множество интересных функций и важных исправлений. Одним из важных моментов является новый редактор DMN в качестве функции предварительного просмотра, которая еще находится в стадии разработки, но которую вы можете начать использовать.

В этой статье вы узнаете, как включить предварительный просмотр редактора DMN, создать простую модель DMN и выполнить ее через REST API.

Давайте начнем 🙂

1) Включение редактора предварительного просмотра

Поскольку эта функция доступна в качестве предварительного просмотра, она по умолчанию скрыта. Чтобы включить его, перейдите в « Settings -> Roles , выберите роль, в которой вы вошли (например, «admin»), и удалите исключение «DMN Designer» в разделе «Разрешения». Посмотрите на шаги:

Редактор DMN

2) Создание модели DMN

Теперь, когда у вас включен редактор DMN, давайте создадим новый проект: перейдите в «Проекты», нажмите «Добавить ресурс», а затем откройте «Предварительный просмотр DMN». Здесь вы можете изучить редактор и создать свой DMN-файл со своими правилами или выполнить действия, описанные в этом видео:

Обратите внимание, что были вставлены два входных узла («Число ветвей» и «Дисперсия ветвей») и один узел принятия решений («Распределение ветвей»). Кроме того, мы создали таблицу решений в узле «Распределение ветвей», чтобы написать некоторые правила.

Файл DMN, созданный в видео, можно скачать здесь .

3) Выполнение модели DMN

После создания и сохранения файла DMN пришло время развернуть модель DMN. Перейдите в Projects -> Your project и нажмите «Развернуть», чтобы развернуть свой проект на сервере KIE. Теперь получите доступ к своему экземпляру с суффиксом «/ dmn», в моем случае URL-адрес: http: // localhost: 8080 / kie-server / services / rest / server / container / DMNSample_1.0.0 / dmn .

Если вы выполните правильные шаги выше, вы увидите что-то вроде этого:

Редактор DMN

Обратите внимание на model-namespace model-name значения model-name , они будут полезны на следующем шаге.

Теперь мы можем отправлять запросы на выполнение правил в нашем экземпляре KIE Server. Смотрите пример ниже:

01
02
03
04
05
06
07
08
09
10
curl -u kieserver:kieserver1\! \
     -H "content-type: application/json" \
     -H "accept: application/json" \
     -d "{ \
           \"model-namespace\" : \"https://github.com/kiegroup/drools/kie-dmn\", \
           \"model-name\" : \"dmn-sample\", \
           \"decision-name\" : [ ], \
           \"decision-id\" : [ ], \
           \"dmn-context\" : { \"Branches dispersion\" : \"Province\", \"Number of branches\" : 10 }}"

Замените URL-адрес, model-namespace model-name собственной информацией и попробуйте ее локально. Правила будут выполняться сервером KIE с созданной вами моделью DMN, и ответ будет примерно таким:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
  "type" : "SUCCESS",
  "msg" : "OK from container 'DMNSample_1.0.0'",
  "result" : {
    "dmn-evaluation-result" : {
      "messages" : [ ],
      "model-namespace" : "https://github.com/kiegroup/drools/kie-dmn",
      "model-name" : "dmn-sample",
      "decision-name" : [ ],
      "dmn-context" : {
        "" : "Medium",
        "Branches dispersion" : "Province",
        "Number of branches" : 10
      },
      "decision-results" : {
        "_76E55A36-755D-44B4-95A9-A247A05D6D7C" : {
          "messages" : [ ],
          "decision-id" : "_76E55A36-755D-44B4-95A9-A247A05D6D7C",
          "decision-name" : "Branches distribution",
          "result" : "Medium",
          "status" : "SUCCEEDED"
        }
      }
    }
  }
}

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

Редактор DMN все еще находится в стадии разработки. Новые функции и улучшения в будущем. Оставайтесь в курсе 😉

Новый DMN Editor Preview

Опубликовано на Java Code Geeks с разрешения Гильерме Каррейру, партнера нашей программы JCG . Смотрите оригинальную статью здесь: Новый DMN Editor Preview

Мнения, высказанные участниками Java Code Geeks, являются их собственными.