Реєстрація послуг та налаштування виклику бізнес-процесів зовнішніми учасниками СЕВ ДЕІР "Трембіта"

1. Передумови

  1. Необхідно розгорнути обов’язкові файли бізнес-процесів та доступу для звернення.

Приклад файлів
  • add-lab-trembita.bpmn;

  • get-lab-accreditation-info.bpmn;

  • bp-trembita.yaml.

    1. Необхідно мати обов’язковий компонент у оточенні — bp-webservice-gateway.

2. Створення Лабораторії (на прикладі Реєстру атестованих лабораторій)

  1. Увійти до сервісу Trembita.

  2. У розділі КЛІЄНТИ СЕРВЕРА БЕЗПЕКИ оберіть необхідну SUBSYSTEM.

  3. Перейдіть до розділу Сервіси SOAP.

trembita bp invoking 1

2.1. Додавання WSDL-файлу до ШБО

WSDL-файл із описом вебсервісу можна отримати, наприклад, за таким шляхом:

https://bp-webservice-gateway-lowcode-gryffindor-qa.apps.cicd2.mdtu-ddm.projects.epam.com/ws/bpWebservice.wsdl

2.2. Додавання прав доступу до створеного WSDL

Для призначення прав доступу доданому WSDL-файлу, натисність Права доступу.

trembita bp invoking 2

2.3. Додавання об’єкта

Наступним кроком, будучи у секції ACL, у пошуковому рядку знайдіть щойно доданий вебсервіс за його назвою та натисніть Додати об’єкти, як показано на скриншоті.

trembita bp invoking 3

2.4. Вимкнення «Підтвердження сертифікату TLS»

Наступним кроком, вимкніть перевірку сертифікату TLS, встановивши відповідний прапорець навпроти параметра Підтвердження сертифікату TLS, та натисніть OK.

trembita bp invoking 4

2.5. Створення файлу WSDL із даними "Трембіта"

Далі необхідно створити файл WSDL із даними "Трембіта" наступного формату:

http://{​​​Адреса шлюзу безпечного обміну Трембіта}​​​/wsdl?xRoadInstance={​​​Екземпляр системи Трембіта}​​​&memberClass={​​​Тип установи клієнта (GOV)}​​​&memberCode={​​​Унікальний ідентифікатор клієта (код ЄДРПОУ)}​​​&serviceCode={​​​Назва сервісу}​​​&subsystemCode={​​​Назва підсистеми}​​​

2.6. Збереження файлу із WSDL на PC

Наступним кроком необхідно зберегти файл із WSDL на PC.

Файл повинен бути із назвою response.

2.7. Створення запита у додатку SOAP UI

Увійдіть до застосунку SOAP UI (встановіть застосунок, якщо такого немає у вашому оточенні) та створіть запит із цим ендпоінтом, як показано на скриншоті:

trembita bp invoking 5

2.8. Заповнення полів для виклику

Заповніть поля згідно прикладу XML-файлу та вкажіть дані створеної лабораторії.

Приклад XML для виклику сервісу
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xro="http://x-road.eu/xsd/xroad.xsd" xmlns:iden="http://x-road.eu/xsd/identifiers" xmlns:bp="https://gitbud.epam.com/mdtu-ddm/low-code-platform/platform/backend/applications/bp-webservice-gateway">

   <soapenv:Header>

      <xro:client iden:objectType="SUBSYSTEM">

         <iden:xRoadInstance>SEVDEIR-TEST</iden:xRoadInstance>

         <iden:memberClass>GOV</iden:memberClass>

         <iden:memberCode> Код Учасника </iden:memberCode>

         <!--Optional:-->

         <iden:subsystemCode>DDMTest_cons</iden:subsystemCode>

      </xro:client>

      <xro:service iden:objectType="SERVICE">

         <iden:xRoadInstance>SEVDEIR-TEST</iden:xRoadInstance>

         <iden:memberClass>GOV</iden:memberClass>

         <iden:memberCode> Код Учасника </iden:memberCode>

         <!--Optional:-->

         <iden:subsystemCode>DDMTest_cons</iden:subsystemCode>

         <iden:serviceCode>startBp</iden:serviceCode>

      </xro:service>

      <xro:userId>MDTUDDM</xro:userId>

      <xro:id>MDTUDDM</xro:id>

      <xro:protocolVersion>4.0</xro:protocolVersion>

   </soapenv:Header>

   <soapenv:Body>

      <bp:startBpRequest>

           <businessProcessDefinitionKey>get-lab-accreditation-info</businessProcessDefinitionKey>

         <startVariables>

            <!--Zero or more repetitions:-->

            <entry>

               <!--Optional:-->

               <key>name</key>

               <!--Optional:-->

               <value>Тестова лабораторія №1</value>

            </entry>

            <entry>

               <!--Optional:-->

               <key>edrpou</key>

               <!--Optional:-->

               <value>12345678</value>

            </entry>

         </startVariables>

      </bp:startBpRequest>

   </soapenv:Body>

</soapenv:Envelope>

2.9. Надсилання запита

Останнім кроком надішліть підготовлений SOAP-запит на сервер:

trembita bp invoking 6