суббота, 4 октября 2014 г.

Пятая часть освоения SOA

Требуется изучить:

Выполнить задание:

  • Сенсоры и BAM:
    • По книге Getting Started With Oracle SOA Suite 11gR1 изучить и выполнить задания по главе 16 (посвящённой Oracle BAM);
    • Сделать композит (с BPEL-процессом), который будет вызывать внешний сервис (который нужно так же реализовать). Этот внешний сервис периодически возвращает ошибку (например такая логика: если минута в текущем времени четная, то вернуть ошибку). Нужно сделать отчёт средствами Oracle BAM содержащий информацию по общему кол-ву запущенных инстансов и сколько из них с ошибками
  • REST:
    • Сделать композит взаимодействующий с RESTful-сервисом (сам RESTful-сервис создайте его любым удобным средством).

пятница, 3 октября 2014 г.

Четвертая часть освоения SOA

Требуется изучить:


Выполнить задание:

  • MDS: задеплоить в MDS артефакты (XSD, WSDL, fault policy file) и сделать простой композит использующий данные артефакты.
  • Resequencing: сделать композит иллюстрирующий работу  всех вариантов Resequencing – Standard, FIFO, Best effort.
  • EDN
    • Сделать композит с WS-интерфейсом, который генерирует событие (EDN), а другой композит слушает это событие и записывает информацию в БД. 
    • Сделать отдельный композит который слушает события от HumanTask (в качестве композита с HumanTask предлагаю взять таковой из tutorial) и записать информацию (как минимум: идентификатор задачи, кто сделал (логина достаточно), что сделал (действие) и когда сделал(время)) в БД

четверг, 2 октября 2014 г.

Третья часть освоение SOA

Выполнить задания:

  • Задачка 1
Сделать композит, который периодически опрашивает (polling) таблицу БД на наличие строк со статусом READY и при их появлении пишет в файловую директорию cvs-файлы.

  • Задачка 2

Сделать композит, который периодически опрашивает (polling) файловую директорию на наличие csv-файлов следующей структуры:
First name,Last name,ID,E-mail
John,Doe,01234567,john.doe@domain.com
Alex,Smith,88888888,alex.smith@domain.com
Необходимо записать данные из csv-файлов в таблицу БД (сделать табличку с теми же полями и первичный ключ по всем полям). 

  • Задачка 3

Сделать композит, который «слушает» очереди JMS и AQ (т.е. две очереди; внутри XML-сообщения) и записывает данные сообщения в таблицу БД через вызов API-процедуры.

  • Задачка 4

Добавить в существующий композит (см. задачку 2) дополнительную операцию (интерфейс WS), входная переменная которой получает полный путь к локальному csv-файлу (структура та же).  Необходимо записать данные из указанного файла в таблицу БД.

  • Задачка 5

Добавить обработку ошибок в композите (см. задачку 2)  и в случае ошибки вставки в таблицу БД (ошибка по первичному ключу) переводить на администратора (humanIntervention), который может изменить значения полей и завершить выполнение композита

среда, 1 октября 2014 г.

Вторая часть освоения SOA

Требуется изучить:

Выполнить tutorial. Есть следующие полезные книги:
  • Getting Started With Oracle SOA Suite 11gR1 (главы 1-10,13-15,17)
  • Oracle SOA Suite 11g R1 Developers Guide (главы 1-8,11,13-14,18-21)
  • WS-BPEL 2.0 for SOA Composite Applications with Oracle SOA Suite 11g (главы 1-7 включительно)
Книги однотипные, главы связанные с BAM (Business Activity Monitorung) и OSB (Oracle Service Bus) пока не рассматриваем. Первые две книги содержат tutorial-ы. Пройдите от начала до конца одину из них (см. указанные главы). Обрати внимание, что оба tutorial-а по немного более старой версии SOA (например по 11.1.1.5), хотя на данный момент чаще всего используется версии 11.1.1.6 и 11.1.1.7 - поэтому скриншоты в книгах могут немного не совпадать.
После завершения tutorial просмотреть остальные книги на непроработанный/незатронутый функционал.

Выполнить задание:

  1. Создать две JMS Queue в Weblogic;
  2. Создать MDB, который перекладывает сообщения из одной очереди в другую;
  3. Развернуть на сервере и протестировать.

Полезные ссылки:

  1. Рекомендую использовать официальный developers guide по Oracle SOA, как справочник.
  2. Хороший блог по Oracle SOA на русском языке
  3. Блоги на английском: