Oracle soa suite что это
Oracle SOA Suite - часть семейства программных продуктов Oracle Fusion Middleware. Представляет собой набор инструментов для построения и управления SOA, позволяет объединять отдельные функции в бизнес-приложения.
В настоящее время тысячи клиентов используют инновации в Oracle SOA Suite и Oracle BPM Suite для развертывания новых социальных, мобильных и облачных решений. Oracle Event Processing (OEP), компонент Oracle SOA Suite, является готовой технологией для создания приложений, обеспечивающих фильтрацию, корреляцию и обработку событий в режиме реального времени, чтобы приложения, интегрированные на уровне данных, а также сервис-ориентированные и управляемые событиями архитектуры поддерживались анализом в режиме реального времени.
Самое полное в отрасли, единое социальное решение для управления бизнес-процессами Oracle BPM Suite предлагает гибкость, эффективность и управляемость, необходимые для корпоративных бизнес-процессов. Готовые процессы на базе лучших методик Oracle Process Accelerators позволяют упростить и ускорить получение экономического эффекта от инициатив клиентов в области управления бизнес-процессами.
понедельник, 16 сентября 2013 г.
Webcast: Upgrade your Oracle SOA Suite to modern Oracle integration in the cloud
Planning to move integrations to the cloud or to modernize your SOA Suite platform? Join a free webcast by Oracle Platinum Partner eProseed to find out how customers have used Oracle’s modern integration solutions to dramatically increase integration agility while lowering costs.
Давно сижу здесь, но вот пока только читаю. Пора и мне что-то да привнести в сей интереснейший ресурс.
Что же интересного могу я Вам поведать? Занимаюсь веб-разработкой, css, javascript, php и прочее, но основная работа – работа в Банке (Специалист по развитию банковских систем).
В данный момент я активно работаю с продуктом Oracle — Oracle SOA Suite 11g, MiddleFusion Controll 11g, Enterprise Manager, Weblogic. На Хабре я встречал довольно не малое количество статей об этом, но отчасти по java-разработке. А я хочу прежде всего познакомить читателей с Oracle SOA Suite 11g, рассказать о некоторых особенностях, которые реально можно познать, только работая с данной технологией. А так как сейчас такая интеграционная шина только начинает интересовать своей перспективой многие финансовые учреждения, да и вообще, по-этому я думаю такая тема является актуальной, тем более, что я могу поделиться опытом.
Так же все ПО, которое я использую является лицензированный и платным – а значит для Вас это возможность узнать о продукте и его преимуществах, не покупая его же.
Итак, чем же этот продукт может быть интересен?
— на сегодняшний день сервис-ориентированная технология (Service Oriented Apllication, SOA) позволяет расширить сами возможности IT сферы. Система Oracle SOA Suite 11g существенно упрощает процесс создания и развертывания SOA, а также управления ею с помощью лучшей в своем классе комплексной, открытой, интегрированной технологи.
С официального сайта – как по книге:
•Простая и высокопроизводительная разработка— унифицированный, простой в использовании набор средств, который позволяет повысить производительность труда разработчика, способствует повторному использованию активов и стимулирует сотрудничество разработчика информационной системы с представителями бизнеса.
•Высочайшая производительность и масштабируемость— обработка событий в реальном времени, обеспечение высокой пропускной способности, а также использование самой масштабируемой в отрасли grid-сети серверов приложений позволяют добиться высокой производительности и надежности.
•Унифицированное управление и контроль— унифицированная инфраструктура для событий и служб, а также сквозное отслеживание копий по всем приложениям позволяют обеспечить интегрированное управление и защиту системы.
Это все почти правда.
Считаю, что для реального пользователя важно 3 вещи – скорость обработки и выполнения Сервисов и приложений, гибкость в разработке и настройке и конечно же защита, и все это здесь можно найти. Ну и конечно Oracle SOA Suite и шина преобразует единую ИТ-инфраструктуру в более гибкую и управляемую. Единственная проблема – отсутствие Мозгов специалистов по этой сервис-ориентированной технологии в странах СНГ.
С личного опыта – индийский суппорт Оракла не отличился в моей памяти своей эффективностью, а как всегда пришлось браться за Бубен. Так же хочется отметить, что это очень гибкая система – это и хорошо и плохо. Хорошо – можно интегрировать все, что интегрируется – я бы, пожалуй, через пару лет по этой системе себе дом автоматизировал в единую консоль под интеграцией
Oracle SOA. Плохо – эта система довольно таки нова и не так распространена, как например — photoshop, и даже суппорт или хелпы с трудом вам прямо дадут ответ на ваши вопросы.
И для каждого веб-девелопера знакомо – такая система быстрее всего работает под Linux, хотя ее администрирование и развитие неплохо работает и под Windows.
Для большей авторитетности вот чем Оракл подкрепляет мою мотивацию работать с этой системой:
• Университет Аделаиды оптимизирует работу с помощью набора Oracle SOA Suite
• Университет Виргинии использует набор Oracle SOA Suite для управления рисками по соблюдению требований законодательства
• Rosendin Electric автоматизирует процессы Procure-to-Pay с помощью Oracle SOA Suite
• Интеграция Oracle SOA Suite с Facebook позволяет GM OnStar быстрее выводить новые услуги на рынок
• Использование Oracle SOA Suite позволяет Telenet быстрее выводить новые услуги на рынок
• С помощью набора Oracle SOA Suite и шины компания Dell преобразует свою единую ИТ-инфраструктуру в более гибкую и управляемую
• Использование набора Oracle SOA Suite позволило федеральному правительству Бельгии сократить время разработки услуг с 12 до 2 месяцев.
Состав Oracle SOA Suite 11g
- Oracle Service Bus
- Oracle BPEL Process Manager
- Oracle B2B Integration
- Oracle Business Activity Monitoring
- Oracle Event Processing
- Oracle Business Rules
- Oracle JDeveloper
- Oracle Enterprise Manager
Тут (в корпоративном стандарте) конечно же читерство с патчами, креками, и битыми лицензиями уже не катит, к сожалению.
Пакет Oracle SOA Suite основано на стандартах, с возможностью «hot-pluggable» инфраструктуры взаимодействует с существующими ИТ-инвестициями, понижая первоначальные затраты. Все эти компоненты обеспечивают последовательность инструментов и собственно функционал, единое внедрение и управление моделью, обеспечение «end-to-end» безопасности и единое управление метаданными – вот то, что дадут вам эти компоненты. Правила управляемых сервисов оркестровки автоматизации позволяет повысить эффективность и гибкость. Полная платформа SOA обеспечивает необходимым единую и «end-to-end» бизнес модель в масштабах любого предприятия. Так в теории. На практике все компоненты используются очень редко. Во-первых — это дорого. Не стоит уже даже упоминать о суппорте со стороны Оракла и дальнейшей поддержке. Во-вторых, в таком пакете реализованы множество возможностей для разного рода задач и мало кому нужен полный спектр такого масштабного и дорогого ПО. Вы же не станете устанавливать полный пакет Adobe, если вам нужен Photoshop.
Я активно использую:
Так же стоит отметить, что для всех без исключения девелоперов и интеграторов сейчас наступает новый этап развития менеджмента – а именно Cloud Management, который как нельзя кстати здесь и реализован.
Заинтересовались?
Кому понравилось или кто заинтересовался данной технологией и софтом, я поведаю еще много интересных, важных «штук» в будущих обзорах и конкретных опытных примерах, так как в свое время, познавая Дзен этого софта, мне просто не у кого было спросить совета.
Есть проект по нагрузочному тестированию одной системы. В схеме взаимодействия между серверами есть внешние системы, которые не участвуют в объекте тестирования — надо их заменить эмуляторами или заглушками. Протокол SOAP. Композиты на BPEL. Стенда нет. Ужасно интересно!
Возможности Oracle SOA Suite для интеграции унаследованных приложений
В данной заметке мы рассмотрим возможности, которые предоставляет Oracle SOA Suite для подключения унаследованных приложений к сервисно-ориентированной инфраструктуре предприятия.
Прежде всего стоит оговориться, что под унаследованными приложениями мы будем понимать приложения, которые не предоставляют возможности подключения с помощью стандартного механизма интеграции - Web Service'ов и в то же время не являются хорошо известными и широко используемыми корпоративными приложениями, т.е. к ним не существует стандартных адаптеров. Таким образом такие лидеры рынка как SAP, OeBS, JDEdwards и Siebel не попадают под наше определение унаследованных приложений.
Теперь можно рассмотреть конкретные механизмы интеграции, предлагаемые стеком продуктов Oracle Fusion Middleware. Для Oracle SOA Suite данными механизмами являются технологические адаптеры.
Технологические адаптеры Oracle SOA Suite реализованы по спецификации J2EE Connector Architecture, что обеспечивает единые принципы разработки, а так же упрощает администрирование. К тому же использование открытой спецификации позволяет сторонним разработчикам реализовывать свои адаптеры. Замечательный пример реализации дополнительного адаптера и его интеграции в JDeveloper - адаптера к SSH - приведен в презентации наших соотечественников Дмитрия Нефедкина и Дмитрия Володина Building Custom JCA Adapters To Integrate 3rd Party Solutions to Oracle FMW.
Однако рассмотрим все же стандартные адаптеры, поставляемые вместе с Oracle SOA Suite.
DB Adapter
Адаптер для подключения к базам данных, DB Adapter. Используется для получения и/или изменения информации в базах данных, работающих под СУБД различных производителей. Незаменимый адаптер при подключении к унаследованным системам, построенным по двузвенной архитектуре - данные, бизнес-логика и API для доступа к бизнес-логике находятся в базе данных. Сам Oracle SOA Suite при этом выступает клиентом к базе данных, таким же как приложение на Delphi или Oracle Forms. Данный адаптер позволяет выполнять следующие операции:
-
вызывать хранимые процедуры;
Подробнее ознакомиться с настройкой адаптера для вызова хранимых процедур можно в заметке Практический пример построения сервиса на Oracle Service Bus. Хороший обзор всех основных возможностей данного адаптера приведен так же в главе 7 Communicating with the Database книги Oracle Service Bus 11g Development Coockbook.
JMS Adapter
JMS-адаптер как и DB-адаптер поддерживает транзакции. Подробнее про настройку транзакционного взаимодействия посредством JMS-адаптера можно прочитать в заметке Транзакционное чтение из JMS-очереди в Oracle SOA Suite, а про использование MapMessages - в заметке Формирование MapMessage с помощью JMS-адаптера Oracle SOA Suite.
AQ Adapter
Подобно JMS-адаптеру AQ-адаптер поддерживает операции: считывание из очереди (Dequeue), запись в очередь и асинхронное взаимодействие вида "запрос-ответ" (Enqueue/Dequeue).
MQ Adapter
К достоинствам адаптера следует отнести встроенную поддержку родных IBM'овских форматов: CICS и IMS при считывании данных.
А так же поддержку массовых операций - записи одновременно в несколько очередей при выполнении операции Put.
File Adapter и FTP Adapter
Часто бывает так, что интегрироваться приходится с очень старыми системами, которые не содержат вообще никаких точек подключения и позволяют лишь обмениваться файлами. К счастью в состав Oracle SOA Suite входит довольно мощный файловый адаптер, позволяющий реализовать такую интеграцию.
Файловый адаптер поддерживает следующие операции: асинхронное считывание файлов (Read File), по сути - полинг директории на диске, запись файла (Write File), синхронное считывание файла (Synchronous Read File), позволяет по команде считать содержимое выбранного файла, а так же получение списка файлов в одном или нескольких каталогах (List Files).
Одним из преимуществ файлового адаптера Oracle SOA Suite является т.н. Native Format Builder, доступный при нажатии на "шестеренку" на странице Messages мастера настройки адаптера.
Native Format Builder позволяет построить XSD-представление файла на основе его формата. Поддерживаются следующие типы форматов:
- поля переменной длины, разделенные специальными символами (Delimited);
- поля фиксированной длины (Fixed Length);
- сложные типы (записи, которые могут включать в себя несколько различных типов);
- XML, описанный с помощью DTD;
- Cobol Copybook.
В качестве информации для настройки первых трех форматов служит пример имеющегося файла, что очень удобно. Уж пример используемого при интеграции файла смежники - разработчики или администраторы подключаемой системы - точно должны предоставить.
FTP-адаптер реализует функциональность аналогичную файловому адаптеру за тем исключением, что операции будут выполняться над удаленной файловой системой. Так же на странице выбора операции данный адаптер позволяет указать режим обмена: бинарный или текстовый.
EJB Service
Технология Enterprise Java Beans является стандартом в мире Java EE для построения компонентов, реализующих бизнес-логику. В состав Oracle SOA Suite входит адаптер, позволяющий использовать композитное приложение как EJB, а так же наоборот - подключать EJB-компоненты к композитному приложению. При этом все взаимодействие осуществляется в рамках распределенных транзакций, тем самым обеспечивая согласованность изменения данных при интеграции приложений.
Для подключения систем, которые не могут общаться с внешним миром никак иначе, чем публикуя и/или считывая файлы, приходится использовать файловый и FTP-адаптеры. При этом под невозможностью общаться иначе как следует понимать не столько ограничения самого программного обеспечения, сколько ограничения конкретного внедрения, когда сначала интеграция была не нужна, а затем такая необходимость появилась, но приглашать специалистов по системе дорого. Таким образом через FTP-адаптеры мы реализовывали подключение IBM FileNet к Oracle SOA Suite.
В крупных сервисно-ориентированных инфраструктурах, включающих в себя лидера рынка MOM - IBM WebSphere MQ - по понятным причинам используется MQ Adapter, правда в России я практически не видел, чтобы в качестве MOM использовался MQ, а в качестве средства интеграции при этом - продукты Oracle, однако, судя по презентациям, на Западе такие решения встречаются.
SOA pricing
Oracle SOA
Oracle SOA Suite for Oracle Cloud Infrastructure consists of Oracle WebLogic Server, Service Bus, Managed File Transfer (MFT), and Business Activity Monitoring (BAM).
Oracle SOA Suite for Oracle Cloud Infrastructure - with B2B Adapter for EDI bundles Oracle SOA Suite for Oracle Cloud Infrastructure with the B2B EDI adapter functionality.
For a list of usage limits, please check the Service Description (PDF).
- *To make it easier to compare pricing across cloud service providers, Oracle web pages show both vCPU (virtual CPUs) prices and OCPU (Oracle CPU) prices for products with compute-based pricing. The products themselves, provisioning in the portal, billing, etc. continue to use OCPU (Oracle CPU) units. OCPUs represent physical CPU cores. Most CPU architectures, including x86, execute two threads per physical core, so 1 OCPU is the equivalent of 2 vCPUs for x86-based compute. The per-hour OCPU rate customers are billed at is therefore twice the vCPU price since they receive two vCPUs of compute power for each OCPU, unless it's a sub-core instance such as preemptible instances. Additional details supporting the difference between OCPU vs. vCPU can be accessed here .
2014: Oracle SOA Suite 12c
2 июля 2014 года компания Oracle представила новую версию самого полного и унифицированного решения для интеграции приложений и сервис-ориентированной архитектуры (SOA) - Oracle SOA Suite 12c.
В составе Oracle SOA Suite 12c новые функции, повышающие производительность труда разработчиков, в том числе простой в использовании инсталлятор, новые средства отладки и тестирования, а также новые возможности использования шаблонов, которые ускоряют разработку или сопровождение проектов.
Среды исполнения и разработки оптимизированы на каждом уровне (оперативная память, дисковое пространство, база данных) для поддержки критически важных корпоративных систем и масштабирования производительности на веб-уровне, а также для крупномасштабных и ресурсоемких нагрузок.
Новая версия обеспечивает быструю и качественную интеграцию мобильных решений с улучшенной поддержкой интеграционных стандартов REST (Representational State Transfer) и JSON (JavaScript Object Notation). Управление API-интерфейсами, которые представляют корпоративные приложения в форматах REST и JSON, теперь упрощено благодаря встроенной поддержке этих стандартов в Oracle SOA Suite 12c.
Расширяя возможности B2B-решений (межкорпоративная электронная торговля), Oracle представила интегрированный инструмент Oracle Managed File Transfer - он значительно упрощает передачу файлов, позволяя организациям безопасно загружать их в приложения Oracle Cloud, а также в облачные приложения других поставщиков или партнеров.
Нововведение в Oracle Event Processing 12c - совместное использование пользовательского интерфейса Oracle SOA Suite, это дает организациям возможность непосредственной интеграции отфильтрованных и коррелированных Больших данных в существующие корпоративные процессы для корректирующих действий.
Продукт Oracle Business Activity Monitoring (BAM) 12c, входящий в состав Oracle SOA Suite 12c, усовершенствован для выполнения быстрой и гибкой оценки ключевых показателей эффективности (KPI) благодаря сохранению данных в формате стандартной схемы «звезда» (star schema format).
Версия Oracle SOA Suite 12c улучшает управляемость для частных облачных сред. Oracle Enterprise Manager 12c предлагает выполненные в стиле «нажми кнопку» функции инициализации полных, готовых к использованию сред для Oracle SOA 12c и быстрого клонирования данных, ускоряющие развертывание и тестирование корпоративных приложений.
Комплекс Oracle SOA Suite 12c построен на лучшем в своем классе сервере приложений Oracle WebLogic Server 12c, который добавляет новые возможности для повышения производительности труда разработчиков, эффективности выполнения приложений, а также высокой доступности и управляемости. Эти продукты являются частью Oracle Fusion Middleware, лидирующей платформы для бизнес-инноваций в корпоративных и облачных средах.
Упрощенная интеграция приложений
Новая версия Oracle SOA Suite 12c объединяет разнородные среды с помощью единой полной платформы, предоставляющей возможности:
- Упрощенная облачная интеграция — С предложением интеграционных адаптеров Oracle Cloud Adapters, комплекс Oracle SOA Suite 12c облегчает интеграцию независимо от варианта развертывания – в облачной среде или непосредственно на предприятии. Oracle Cloud Adapters кардинально повышают производительность труда разработчиков, обеспечивают всесторонние коммуникационные возможности, надежность и эффективность для интеграции. Oracle планирует и дальше предлагать новые интеграционные адаптеры в составе платформы Oracle SOA Suite 12c. В новую версию Oracle SOA Suite также включен комплект средств разработки Oracle Cloud Adapter Software Development Kit (SDK), который позволяет клиентам и партнерам создавать свои собственные адаптеры Oracle Cloud Adapters для будущих проектов интеграции.
- Расширенная и улучшенная мобильная интеграция — Oracle SOA Suite 12c предоставляет поддержку интеграционных стандартов REST и JSON, которые оптимизированы для разработки мобильных решений, что удовлетворяет потребности организаций в быстрой интеграции мобильных приложений. Кроме того, в новой версии реализована возможность конвертации формата XML в формат JSON.
- Повышенная производительность — Новая версия содержит шаблоны для поддержки лучших методик и сокращения времени разработки, а также унифицированный интерфейс на базе Oracle JDeveloper для Oracle Service Bus и Oracle Event Processing.
- Консолидация обмена файлами — Oracle SOA Suite 12c также облегчает управление передачей файлов путем консолидации разрозненных FTP-решений в масштабе организации с помощью встроенного компонента Oracle Managed File Transfer, который упрощает интеграцию и способствует сокращению расходов и уменьшению ошибок.
Новый комплекс Oracle SOA Suite 12c доступен в Oracle Technology Network (OTN). Начало продаж запланировано на июль 2014 года.
Only Oracle SOA offers the ability to move existing, on-premises integrations and composite applications to the cloud as-is with Bring Your Own License (BYOL), and the ability to create modern integrations with Oracle Integration.
Easily find Oracle partners near you with expertise in building on, selling, and providing value-added services for Oracle technology. Get the know-how you’ll need to speed your digital business and modernization projects.
Get the latest news, service updates, technical tips and tricks, and early access to upcoming events for Oracle Integration and automation services. Hear from your peers and Oracle’s product managers about best practices.
See how to migrate integrations and processes to the cloud.
Bank Audi S. A. L. rapidly builds new banking services with Oracle SOA
Deploy Oracle SOA in the cloud or on-premises
Automate and analyze end-to-end integration flows
Integration automation
Improve productivity and reduce retyping errors by automating the flow of data across Oracle, third-party, and custom applications. Increase business agility and cut support costs by isolating services from clients for application interactions.
Pre-built application adapters
Connect any on-premises and select SaaS applications with B2B partners to automate end-to-end ERP, HCM, and CX processes.
Packaged operational dashboards
Oracle SOA dashboards track and trace integration data flows to enable rapid response to exceptions and help ensure business service level agreements (SLAs) are met.
Migrate connections to the cloud with deployment portability
Move on-premises to cloud
Accelerate application modernization by migrating existing on-premises SOA integrations to the cloud, with no recoding required. Limit technical risk for each stage of digital transformation with full portability.
On-premises and cloud coexistence
Selectively deploy integrations on-premises or in the cloud to optimize security, cost, and regulatory requirements. Leverage expertise with service-oriented styles of automation and shift development to Oracle Integration for modern connectivity.
Unified operational management for complete control
Automated provisioning
Save hardware costs, procurement lead time, and the effort of manually provisioning servers by subscribing to Oracle SOA. Quickly scale development, test, or production environments with automated provisioning for Oracle Service Bus, business analytics, and managed file transfer (MFT).
Automated management
Reduce complexity, errors, and increase agility by automating administrative operations such as backup, restore, scalability, and high availability.
Virtual administrative access
Reduce maintenance cost and complexity with full administrative access to the SOA server through a unified, web-based console and virtual-machine access via secure shell (SSH).
Managed file transfer (MFT) for reliable delivery
Simply secure file transfers
Easily configure file transfer protection by leveraging built-in pretty good privacy (PGP) encryption, SSH, and secure file transport protocols (sFTP).
Extend and monitor transfers
Enjoy flexible scheduling, notifications, and reporting for trusted file transfer and resubmission.
HCM unified with application integration
Eliminate connectivity barriers to consolidate HR processes, improve employee engagement, and reduce costs.
Решение
Посетила мысль сделать точно также, как на продуктиве: Oracle Database + Oracle Weblogic + Oracle SOA Suite, разработка в Oracle JDeveloper.
Далее я расскажу про:
- Разворачивание своего стенда
- Подключение MDS
- Импорт существующего композита
- Выпиливание вызова внешних систем
- Вставку примера успешного ответа
- Примеры использования операторов
- Добавление в композит нового веб-сервиса
- Вызов асинхронного сервиса
- Деплой композита
- Проверку модифицированного композита
- Анализ проблем при проведении тестирования
- Мониторинг и замечания при работе
BPEL — язык на основе XML для формального описания бизнес-процессов и протоколов их взаимодействия между собой.
Надо сказать, что BPEL довольно большая и удобная штука, позволяющая вставлять разные операторы, дебаг и куски кода, например Java.
Бизнес процесс выглядит примерно так:
Давайте развернем свой стенд. И так, что нам потребуется и какие версии:
Разворачивание своего стенда
Инструкции по установке и настройке софта
Выбор пути для домашней папки.
Пропустим регистрацию для обновлений.
Выберем типичную установку.
Укажем папку с JDK.
Далее укажем папку куда поставить сам Weblogic.
Установка и поздравления.
В установке нет ничего сложного, остановлюсь только на некоторых моментах.
Пропустим минимальные требования и поставим Oracle Database 11g Release 2 x32 для Windows, выберем Desktop Class. Нам для разработки хватит.
В интернете, в том числе и на хабре есть много статей по установке. Отмечу только установку под локальным админом и задание переменных окружения. Хотя ошибка с отсутствием ORACLE_UNQNAME не помешала и все завелось.
Для запуска установщика надо указать путь к JRE или JDK.
Пропустим обновление софта.
Проверка операционной системы и физической памяти, в случае ошибки можно проигнорировать.
Выбор Middleware Home и название директории для нашего SOA.
Далее установщик нашел Weblogic в домашней папке.
Установка и поздравления. Проверим подключение.
Или запустим SQL Developer и настроим подключение.
Выбираем Create Repository.
Указываем параметры БД, в нашем случае это localhost, 1521, sys и пароль. Далее идет проверка.
Следом надо указать префикс для имен схем данных (по умолчанию DEV) и выбрать компоненты репозитория, нам нужны Metadata Services и SOA Infrastructure, User Messaging Service выбирается автоматически.
Укажем пароль для пользователей, владельцев схем с данными для репозитория.
Потом можно выбрать табличные пространства для схем данных репозитория.
Запуск создания tablespaces.
Запускаем установку.
Чтобы его создать запустим файл config.cmd в папке
У меня JDK 1.7, поэтому он ругнулся
Мы ее обойдем — меняем javaw на java в файле
и получаем описание Unrecognized VM option 'UseSpinning'
Удаляем опцию -XX:+UseSpinning (которой больше нет с 1.6) в файле
и снова запускаем.
Выбираем создание нового домена.
Выбираем Oracle SOA Suite, Enterprise Manager. WSM Policy Manager и JRF выберутся автоматически.
Указываем имя и путь к домену и приложениям.
Пароль для пользователя weblogic.
JDK и тип инсталляции. Оставим Development Mode.
Пропишем пароли к вашим схемам, хост и sid:.
Настраивать не будем, оставим пустыми.
Готово. Запустим Admin Server.
Когда будет просить ввод логина и пароля, вводим от администратора домена. Чтобы больше не просил создадим файл.
Необходимо установить JDeveloper что бы создавать композиты. Берем версию 11.1.1.9.0.
Ставим, используя существующий Middleware Home.
Для работы с композитами, необходимо установить расширение для нашего JDeveloper.
Подготовка к разработке
Композиты, которые мы будем деплоить, используют схемы, которые хранятся в MDS в БД. Его можно запросить или выкачать из стенда для функционального тестирования.
Импорт MDS архива.
Создание подключения к БД под пользователем схемы MDS. View->Resource palette->New Connection->Database
Создание подключения к MDS. View->Resource palette->New Connection->SOA-MDS
Создание пустого проекта. (File->New).
Импорт существующего композита. Композиты также можно выкачать с функционального стенда. Выбираем созданный проект, File->Import.
Разработка
Расковыряем композит и задеплоим
На картинке выше можно видеть в правой части имеется внешняя система и бизнес-процесс ее вызывает методом invoke.
Давайте же уберем это ненужное. Я буду делать это в блокноте. Но можно и в интерфейсе.
Краткий экскурс.
Файл состоит из блоков, вариаций больше, я перечислю некоторые:
process — корневой тег для процесса
partnerLinks — партнерские соглашения между сервисами
variables — декларация переменные
faultHandlers — обработчики ошибок
sequence main — бизнес-процесс
receive — получение запроса от клиента
assign — блок присвоения переменных
сopy — копирование данных из одного объекта в другой
invoke — вызов веб-сервиса
if, elseif, else — объявление условий
condition — описание условия
forEach — объявление цикла
startCounterValue — начало цикла
finalCounterValue — конец цикла
scope — объединение
Убрать часть соглашения, касающееся внешней системы.
Для простоты обработчик ошибок я тоже удалю. Весь тег faultHandlers.
Удаляем assign запроса к внешней системе, оставим только копирование данных из запроса для идентификации запроса.
Удаляем все вызовы внешних систем invoke, кроме последнего в файле, где должен быть ответ нашему клиенту.
Посмотрим переменную, в которую нужно записать ответ. В нашем случае это outputVariable
Берем пример ответа, который наш дружелюбно предоставили разработчики или мы сами вытащили из SOA на функциональном стенде. И прописываем значения в нужные теги. Например
Метод payload, операция ответа AnsSearchGetCustomerPartyAcc и xpath поставим свои.
BEGIN[$itr] — элемент в цикле, означает $itr-итый элемент BEGIN внутри родительского.
- Удалим импорт wsdl от внешнего сервиса.
- Уберем еще ссылку на внешний сервис.
- И еще соединение wire к удаляемому сервису GetCustomerPartyAccountBS
- Убираем ссылку на внешний сервис в этих файлах.
- Пробуем собрать. Right Click на проекте -> Make.
Если все ОК, то деплоим, нет — разбираемся.
Можно создать несколько сервисов с одинаковым именем, но разной версии.
Вызывать можно все, но по стандартному адресу будет работать только default-ревизии. В Enterprise Manager можно применить default на задеплоенном композите.
Добавим локальный сервер. Жмем плюс.
Выбор SOA сервера.
Несколько примеров интересных возможностей.
Цикл и итератор.
Использование итератора в цикле.
Много встроенный функций, например генерация guid.
Вкусное. Можно вставить Java.
Есть бизнес-процесс который вызывает внешнюю систему, которая через какое-то время делает запрос в тестируемую систему. Этого в нашем бизнес-процессе нет.
Необходимо настроить партнерские соглашения с новым сервисом, прописать переменные и вставить invoke сервиса запросом ReqSyncFinancialTransactionBatch в наш бизнес-процесс.
Сервис-провайдер, который принимает запрос ReqSyncFinancialTransactionBatch тоже построен на SOA и по хорошему стечению обстоятельств от него есть композит.
Нужно его распаковать и перетащить все, что относится к вызову провайдера в наш композит.
Добавляем пространства имен от провайдера и типа запроса в список.
Добавление партнерского соглашения.
Мне потребовалось еще и импортировать схемы.
Делаем присвоения в новом запросе, там где необходимо в соответствии со схемой.
Делаем вызов сервиса invoke, и вычитывание ответа receive, если нужно.
Если нужно, проставляем необходимые хедеры к запросу с помощью bpelx:toProperties.
Положим wsdl PROVIDER_TAWrapper.wsdl от сервиса в наш проект
Добавим reference в файл сfgplan
Тестирование композита
Проверим то, что мы наделали.
- Берем SoapUI, генерируем mosk-сервис, используя wsdl от задеплоенного нами сервиса.
- Берем пример запроса к нашему сервису, прописываем в настройках в ReplyTo адрес mosk, которого только что создали. В Action прописываем операцию. Картинка кликабельна.
- Также возьмем SoapUI, генерируем mosk-сервис, используя wsdl от сервис-провайдера.
- Копируем адрес wsdl и прописываем его в файле composite.xml в нашем сервисе. Таким образом мы указываем куда будет идти внедренный запрос.
- Сохраняем, деплоим с другой версией. Снимаем также галочку в default, чтобы наш дебаг никому не помешал.
Анализ проблем при работе
Что делать если разработчики скажут, что наша заглушка тормозит, а у них все отлично?
Будем разбираться.
Потребовалось найти запросы по содержимому, чтобы понять что с ним случилось. Таблица CUBE_INSTANCE в нашей схеме DEV_SOAINFRA содержит всю историю по композитам. Но для просмотра надо ее вытащить из блоба.
Нашел тут функцию, которая это делает
и пример использования
-
Ищем проблемный запрос. Картинка кликабельна.
Тут ничего сложного
-
Для мониторинга системных ресурсов и метрик soa eсть замечательная вкладка Perfomace summary.
Размер табличного пространства можно смотреть в таблице dba_tablespace_usage_metrics
Заключение
За неизвестное можно и нужно браться и не бояться ошибиться. Да, и JDev мне понравился больше чем Eclipse.
Are you aware how much time I've spent learning for details of Java? Thread management, dynamics, CORBA.
Oracle SOA Suite 11g
Комплекс решений Oracle SOA Suite 11g относится к классу промежуточного ПО и представляет собой интегрированную линейку продуктов для интеграции, настройки, развертывания и эффективного управления работой бизнес-приложений. В основе Oracle SOA Suite 11g лежат признанные в отрасли стандарты, что обеспечивает совместимость решений практически с любыми информационными системами, а также возможность осуществления таких проектов в сжатые сроки. Это – базовая технология, применяемая при сервис-ориентированном подходе к интеграции приложений и позволяющая создавать самую современную, удобную в эксплуатации и экономичную ИТ-архитектуру на сегодняшний день.
On-premises ERP customer success stories with Oracle SOA
Hundreds of customers use the benefits of Oracle SOA, including pre-built adapters, examples, process templates, and real-time business insights to phase their digital modernization programs and accelerate project delivery.
Oracle SOA use cases
ERP application integration made simple
Accelerate requisitions, PO creation, and invoice validation processes by automating manual steps and exception handling.
CRM connected for seamless CX
Simplify sales processes with Oracle SOA for opportunity-to-quote, quote-to-order, and service-to-sales.
Читайте также: