Развертывание (deployment) Web-служб

Для того чтобы развернуть (установить) сервисы можно воспользоваться разработанными заданиями ant (см. Приложение Г. Задания Ant (Ant Targets)). Условно можно определить три типа заданий Ant, разработанных для данного проекта:

1. Для компилирования и сборки проекта;

2. Для развертывания проекта (установки web-служб и BPEL-процессов);

3. Для запуска тестов.

На этапе сборки проекта создается файл архива, который можно устанавливать в ActiveBPEL Engine: webseller/wsr/webseller.wsr - web-служба WebSellerDB. Архив BPEL-процесса WebSeller - webseller/bpr/webseller.bpr - создается при помощи ActiveWebflow Professional.

Для сборки проекта необходимо выполнить команду (webseller/ant/ - рабочий каталог):

ant build

Все, что нужно для развертывания - это скопировать файлы архивов служб в каталог %CATALINA_HOME%/bpr. Сделать это можно командой:

ant deploy

Для запуска тестов можно воспользоваться командами:

ant deploy-junit

ant test

Тестовые примеры

Для созданного BPEL-процесса в качестве эмуляции системы, в которую интегрирован этот сервис, разработан набор JUnit-тестов (класс net.sf.dmitrygusev.webseller.test.TestWebSeller).

Краткое описание тестов и результатов их работы

В классе TestWebSeller эмулируются три исхода вызова службы:

1. Нормальное завершение обработки заказа подтверждением от клиента (метод testOrderProcessingConfirm());

2. Отмена сделанного заказа (метод testOrderProcessingCancel());

3. Таймаут (метод testOrderProcessingTimeout()).

Пример выполнения теста с таймаутом

Пример выполнения BPEL-процесса в тесте с таймаутомПример выполнения BPEL-процесса в тесте с таймаутом

Рисунок 8 Пример выполнения BPEL-процесса в тесте с таймаутом

Глобальные обработчики исключительных ситуацийГлобальные обработчики исключительных ситуаций

Рисунок 9 Глобальные обработчики исключительных ситуаций

Заключение

Сервис-ориентированные архитектуры (Service-Oriented Architectures, SOA) сегодня очень популярны. Хотя SOA не предполагает использование web-служб в качестве сервисов, на сегодняшний день преимущественно именно web-службы используются для построения SOA. В связи с этим на ряду с поддержкой разработки web-служб в языках ООП (JAX-RPC/SAAJ/JAXM, если рассматривать в контексте языка Java) появляются также специфические языки, которые позволяют создавать новые сервисы на основе уже существующих. Примером такого языка является рассмотренный в данной работе язык BPEL, который позволяет специалистам с квалификацией ниже, чем разработчики языков ООП, например, бизнес аналитикам, с легкостью описывать бизнес-процессы, работающие в реальных SOA, пользуясь графическими нотациями, предоставляющие более высокий уровень абстракции для описания сервиса. Используя BPEL, новые сервисы могут разрабатываться за считанные дни и недели, против месяцев и годов, которые пришлось бы потратить на их реализацию, используя технологии более низкого уровня, таких как JAX-RPC/SAAJ/JAXM.

 
< Пред   СОДЕРЖАНИЕ   Скачать   След >