В прошлой статье Создание BPEL процессов в JDeveloper (часть 1.Установка, описание компонентов) было описано как обновить Jdev для работы с BPEL, и описаны основные компоненты. Здесь я опишу как создать простой процесс и развернуть его на сервере Weblogic
Приступим : )
Создадим процесс который при вводе названия страны выводит города этой страны
как указано на картинке :
5. Свяжите компонент Invoke и сервис(он появился в partner links после связывания процесса и сервиса в composite.xml)
Нажав на этот компонент появится окно редактирования. В этом окне находится два дерева с переменными. В левом дереве выбираются переменные которые нужно присвоить, в правом выбираются переменные куда присваиваются левые переменные.
В первом Assign нам нужно связать inputVaiable(входящая переменная процесса) и Invoke1_GetCitiesByCountry_InputVariable(входящая переменная для Invoke)
Далее устанавливается версия ревизиии, и некоторые опции для деплоя
Жмите Finish.
Приложение задеплоено. Теперь проверим его работу. Для этого зайдите во вкладку " Application Server Navigator" , найдите ваше приложение как указано на картинке и запустите тест веб сервиса процесса
Создадим процесс который при вводе названия страны выводит города этой страны
1. Создайте BPM или SOA приложение
2. Добавьте сервис.
В созданном composite.xml нажмите правой кнопкой в блоке External Refernces, выберите Insert->Web Service и добавьте сервис http://www.webservicex.com/globalweather.asmx?WSDLкак указано на картинке :
3. Свяжите сервис с процессом.
Каждый компонент в composite.xml при наведении на него отображает стрелочку на которую можно нажать и перетащить к компоненту который вы хотите связать.
4. Добавьте компонент Invoke для вызова сервиса.
При переносе Invoke с палитры компонентов на блок схеме указывается куда возможно его добавить(зеленые окружности с плюсиком). Нам нужно его добавить между receiveInput(в эту компонент передаются входящие данные) и replyOutput(в эту компонент передаются исходящие данные)
Когда вы свяжите Invoke c сервисом, появится окно редактирования Invoke.Здесь нам сейчас важно указать :
- Метод который будет вызываться (Operation:GetCitiesByCountry)
- Входящую и исходящую переменную ( Нажав на "+" JDev создаст их автоматически в зависимости от структуры метода)
6. Передайте в Invoke входящие данные, а данные которые вернутся в Invoke передайте на выход процесса.
Для этого используется компонент Assign. Он используется для работы с переменными. Добавьте этот компонент перед и после Invoke.
В первом Assign нам нужно связать inputVaiable(входящая переменная процесса) и Invoke1_GetCitiesByCountry_InputVariable(входящая переменная для Invoke)
В первом Assign нужно связать Invoke1_GetCitiesByCountry_OutputVariable (исходящая
переменная Invoke) и outputVariable(исходящая переменная процесса )
Процесс готов, теперь его необходимо развернуть на сервере. Для этого нажмите правой кнопкой по проекту и нажмите Deploy->BpelTest
После выбора пункта "Application server" появится окно с выбором сервера. Если у вас есть сервер куда устанавливать процесс, то выберите его.Если же нет, то вам стоит установить Oracle SOA Suite. Инструкцию по установке можно найти по следующей ссылке: http://www.oracle-adf.info/2014/03/oracle-soa-suite.html
Далее устанавливается версия ревизиии, и некоторые опции для деплоя
В этом окне выбирается сервер на который развертывается процесс.
Жмите Finish.
Приложение задеплоено. Теперь проверим его работу. Для этого зайдите во вкладку " Application Server Navigator" , найдите ваше приложение как указано на картинке и запустите тест веб сервиса процесса
В строку input введите страну (например Russia) и нажмите "Send Request".
В результате вернется строка которая вернет названия городов. Готово : )
Этот процесс очень простой, но показывает основы работы с BPEL. Следующая статья посвященная BPEL опишет, как обрабатывать строки в BPEL и передавать данные в БД
Комментариев нет:
Отправить комментарий