Komponenta „BPEL Process“ v Oracle SOA Suite Marek Rychlý Vysoké uˇcení technické v Brneˇ Fakulta informaˇcních technologií Ústav informaˇcních systému˚
Pˇrednáška pro IOA 30. ˇríjna 2014
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
1 / 33
Obsah
1
Popis, vlastnosti a použití komponenty „BPEL Process“ Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
2
Definice BPEL procesu, jeho jednotlivé aktivity Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
3
ˇ Shrnutí a záver
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
2 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
Orchestrace služeb a „BPEL Process“ komponenta (opakování ze 4. pˇrednášky)
Orchestruje napojené komponenty/služby pomocí vlastní logiky. (komponenta je vhodná pro implementaci business procesu/služeb) ˚
Logika orchestrace zapsána v jazyce BPEL v1.1 nebo BPEL v 2.0. (BPEL v1.1 aka BPEL4WS a BPEL v2.0 aka WS-BPEL jsou standardizovány)
BPEL nemá stanovenou grafickou notaci, narozdíl od BPMN. (BPMN modely jsou pˇrevoditelné do BPEL, ikdyž to je pak velmi špatneˇ cˇ itelné)
(diagram pˇrevzat z „Oracle SOA Suite 11g: Essential Concepts“) Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
4 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
Orchestrace business procesu Orchestrace je ˇrízení událostí business procesu z jednoho místa. Orchestrace zahruje sestavení služeb dle požadavku˚ procesu pro vytvoˇrení komponentového systému realizujícího business proces.
Orchestraci business procesu lze popsat pomocí BPMN – dekompozice business procesu na jednotlivé aktivity, (aktivity nesouvisí pˇrímo se službami, ale napˇr. s lidskou cˇ inností)
BPEL – business process jako kompozice jednotlivých služeb. (kompozice služeb do hrubozrnné služby vykonávající business process)
(diagram pˇrevzat z „Service composition business modeling“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
5 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
Business Process Execution Language (BPEL) Jazyk pro orchestraci služeb do business procesu. (zápis v jazyce XML a s využitím souvisejících technologií: XSD, XPath, . . . )
BPEL4WS (BPEL v1.1) – BPEL for Web Services, WS-BPEL (BPEL v2.0) – Web Services BPEL. ˇ (opravuje nedostatky BPEL4WS, napˇr. XSD pro typy promenných, jednodušší XPath pomocí „$“, možnost validace XML, atd.)
ˇ pomocí BPEL Engine. V rámci SCA kontejneru spouštený (po pˇrijetí volání služby/procesu orchestruje služby dle BPEL dokumentu)
Kromeˇ definice kompozice služeb do business procesu umí BPEL aktivity pro ˇrízení toku procesu a manipulaci se zprávami, (forEach/While/RepeatUntil, If, Assign/Scope, Validate)
obsluhu synchronních a asynchronních volání, ˇ procesu) (Receive/Reply; zaˇcínajících proces i dodateˇcných zpráv v prub ˚ ehu
sekvenˇcní cˇ i paralelní volání operací služek kompozice, (Flow/Sequence, Empty/Invoke/Wait/Exit)
zachytávání událostí a vyvolání chybových stavu. ˚ (Pick/Throw) Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
6 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
Service Orchestration/BPEL Engine
(diagram pˇrevzat z „Service Orchestration Pattern“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
7 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
Synchronní a asynchronní volání služeb Pˇri synchronním volání (typicky krátce pracující) služby pˇredány parametry operaci volané služby ˇ a obdržena návratová hodnota pˇrípadneˇ zpráva o chybe. ˇ (po vyvolání služby její klient cˇ eká/je blokovaný až do pˇrijetí odpovedi)
Pˇri asynchronním volání (typicky dlouze pracující) služby pˇredány parametry operaci volané služby ˇ pomocí „callback“. pokud návratová hodnota, tak obdržena pozdeji ˇ (po volání služby klient pokraˇcuje, cˇ eká až/pokud vubec ˚ potˇrebuje odpoved’)
(diagram pˇrevzat z „Asynchronous vs. Synchronous BPEL process“) Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
8 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Orchestrace business procesu a implementujích služeb Business Process Execution Language (BPEL) a BPEL engine Použití BPEL procesu v SCA aplikaci
Použití BPEL procesu v SCA aplikaci BPEL proces je vhodný pro tvorbu komponent, které implementují business proces voláním služeb, ˇ business procesu) (tj. orchestrují ostatní služby pro splnení
ˇ volají více interních cˇ i externích služeb, zejména asynchronne, ˇ (tj. externí nebo interní dlouho-bežící služby SCA aplikace)
volají služby podle dané logiky. ˇ atd.) (tj. v podmínkách, cyklech, sekvencích i paralelne,
BPEL proces pˇrijímá externí požadavky a orchestruje komponenty „Mediator“ a „Business Rule“, ˇ ˇ (smerování pˇríchozích odchozích zpráv a oddelení logiky podmínek)
komponenty „Human Task“, ˇ (ˇrízení work-flow, upozornování cˇ i asynchronní zpracování zpráv uživateli)
komponenty „Spring Service“. ˇ (implementace složitejších výpoˇctu/zpracování ˚ dat, ne orchestrace)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
9 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Základní cˇ ásti BPEL procesu WSDL popis rozhraní procesu, ˇ (umožnuje volat BPEL proces jako operaci služby, pˇredat zprávu daného formátu)
aktivity procesu, ˇ procesu, ˇrídící struktury a volání externích služeb) (XML popisující prub ˚ eh
spojení na partnery procesu ( „partner links“). (XML popisující odkazy na externí služby volané/volající aktivitami/aktivity)
(diagram pˇrevzat z „Writing a simple WS-BPEL process for WSO2 BPS and Apache ODE“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
11 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
XML struktura BPEL dokumentu <process name="Sample-BPEL-Process" targetNamespace="http://sample.url/" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"> ...
Kde uvnitˇr elementu <process> mohou být následující elementy <extensions>
<partnerLinks> <messageExchanges> <eventHandlers> ...
Marek Rychlý
rozšíˇrení engine o dodateˇcné operace pˇriˇrazení a aktivity odkazy na potˇrebné WSDL dokumenty popis vztahu˚ procesu s jeho partnery (službami) jména k párování „receive“ a „reply“ aktivit ˇ mapování cˇ ástí zpráv na prozmenné použitélné v procesu rozlišení instancí procesu, tj. zapoˇcatých konverzací definice reakcí na chyby pˇri volání služeb definice aktivit pˇri pˇríchodu ozámení o události elementy aktivit procesu.
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
12 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Definice BPEL
(diagram pˇrevzat z „Next Generation Web Services in Practice“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
13 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
BPEL element <partnerLinks>
<partnerLinks> <partnerLink name="ncname" partnerLinkType="qname" myrole="ncname" partnerRole="ncname" />
Napojuje business proces na rozhraní webových služeb. ˇ volaných služeb) (tj. na porty v jeho WSDL dokumentu nebo dokumentu˚ z nej
Partneˇri mohou vyvolat proces cˇ i proces muže ˚ vyvolat partnery. (pomocí aktivity nebo s jmeny partner link a operace)
Každý BPEL proces má tedy alesponˇ jednoho partnera. (tj. službu, která vyvolá BPEL proces a ten toto pˇrijme aktivitou )
Pˇríslušný WSDL musí byt zaveden do BPEL pomocí .
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
14 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
BPEL element <partnerLinks> a související WSDL <partnerLink> se odkazují na <partnerLinkType> ve WSDL. (typ spojení je konkrétní popis koncového bodu služby, podbneˇ jako její URL)
Atributy „partnerLinkType“ a „partnerRole“ musí odpovídat WSDL. (atributum ˚ „name“ u WSDL elementu˚ <partnerLinkType> a )
(diagram pˇrevzat z „Web Services, SOA, and WS-BPEL Technologies“) Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
15 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Význam role v BPEL elementu <partnerLinks>
(diagram pˇrevzat z „Next Generation Web Services in Practice“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
16 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Pˇríklad použití BPEL elementu <partnerLinks> WSDL: <wsdl:portType name="SquareServicePortType"> <wsdl:operation name="square" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"> <wsdl:input message="ns0:squareRequest" wsaw:Action="urn:square"/> <wsdl:output message="ns0:squareResponse" wsaw:Action="urn:squareResponse"/>
BPEL: <partnerLink name="SquarePartnerLink" xmlns:ns2="http://SquareService.wsdl" partnerLinkType="ns2:SquareServicePartnerlinkType" partnerRole="squareRole"/> Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
17 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Pˇrehled aktivit v BPEL procesu základní aktivity ˇ na/volání operací služeb, odpoved’ (Invoke, Receive, Reply)
ˇ modifikace promenné, (Assign, Validate, Transform)
obsluha chyb, (Throw, Catch(All), Compensate)
cˇ ekání, pˇrerušení nebo žádná akce. (Wait, Exit/Terminate, Empty)
strukturované/ˇrídící aktivity omezení viditelnosti, (Scope)
sekvenˇcní zpracování, podmínky, (Sequence, If/Switch)
ˇ opakované a paralelní spouštení, (While, RepeatUntil, ForEach, Flow)
zpracování událostí. (Pick, onMessage, onAlarm) Marek Rychlý
(diagram pˇrevzat z „Design-time support for BPEL 2.0 in Oracle SOA 11g – Part 1“)
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
18 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Pˇrehled základních aktivit v BPEL procesu
(diagram pˇrevzat z „Next Generation Web Services in Practice“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
19 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Základní aktivity v BPEL procesu Invoke volá operaci služby identifikované spojením na partnera ˇ Receive cˇ eká na pˇríchod první zprávy nebo callback dˇrívejšího volání ˇ na zprávu obdrženou aktivitou „receive“ Reply vrací odpoved’ ˇ ˇ Assign kopíruje obsahy promenných a konstanty do dané promenné ˇ Validate validace obsahu promenné dle XML Schéma ˇ Transform transformace obsahu promenné dle XSLT (uvnitˇr „assign“) Throw na daném místeˇ procesu generuje chybu Catch zachytí chyby dle jména a podmínek (uvnitˇr „scope“) Compensate spouští sekvenci aktivit k nápraveˇ detekované chyby Wait cˇ eká daný cˇ asový interval nebo do daného cˇ asu ˇ Exit ukonˇcuje úlohu nejaké aktivity (napˇr. uvnitˇr „catch“) Empty nic neprovádí, vhodné pro monitoring, obsluhu chyb, atp.
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
20 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Pˇrehled strukturovaných aktivit v BPEL procesu
(diagram pˇrevzat z „Next Generation Web Services in Practice“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
21 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Strukturované/ˇrídící aktivity v BPEL procesu ˇ Scope uzavírá aktivity do bloku tak, že mohou sílet promenné, obsluhu zachycení a nápravy chyb, atp. Sequence sekvenˇcní provedení daných aktivit ˇ If vetvení na základeˇ dané podmínky While provádí aktivity dokud platí daná podmínka RepeatUntil opakuje aktivity pokud platí daná podmínka ForEach provádí aktivity daný poˇcet opakování ˇ Flow paralelní/soubežné provedení daných aktivit Pick cˇ eká až nastanou dané události onMessage cˇ eká na pˇríchozí zprávy v rámci „pick“ aktivity onAlarm reaguje na chyby pˇri cˇ ekání v rámci „pick“ aktivity
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
22 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
BPEL „Scope“ pro seskupování aktivit Uzavírá aktivity do bloku, analogie strukturovaného programování. ˇ (blok zvyšuje pˇrehlednost BPEL procesu, skrývá/zapouzdˇruje nekteré jeho cˇ ásti)
V rámci bloku sdílejí aktivity ˇ promenné, napˇr. „inputVariable“/„outputVariable“ pro vstup/výstup, spojení na partnery, obsluhu chyb, tj. aktivity „catch“ a „compensation“, obsluhu zprá v rámci „Pick“ aktivity.
(diagram pˇrevzat z „Oracle SOA Suite 11g: Essential Concepts“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
23 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
BPEL a hierarchie „Scope“ aktivit
(diagram pˇrevzat z „Next Generation Web Services in Practice“)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
24 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
ˇ Práce s promennými v BPEL procesu ˇ Promenné používány pro uložení, modifikaci a transformaci zpráv. ˇ (promenná je potˇreba pro každou zprávu vstupující cˇ i vystupující do/z procesu)
ˇ Podle „scope“ rozlišujeme lokální a globální promenné. (globální jsou v „scope“ aktiviteˇ „main“, lokální pak v zanoˇrených „scopes“)
ˇ Promenné v platném „scope“ definují aktuální stav procesu. ˇ (resp. stav instance BPEL procesu zapoˇcaté nejakou aktivitou „receive“)
ˇ Promenné jsou urˇcitých datových typu˚ datových typu˚ zabudovaných v BPEL (napˇr. string nebo bool), typu˚ XML dokumentu˚ definovaných pomocí daného XML Schema, typu˚ zpráv webových služeb („message type“ dle WSDL a XSD.
ˇ ˇ Pˇriˇradit data promenným je možno dvema zpusoby ˚ ˇ pomocí aktivity „Assign“ z konstant a promenných, ˇ (rychlé „in-memory“ kopie dat, vhodné pro menší zmeny/operace s daty)
ˇ pomocí transformace XSLT z jiného XML dokumentu/promenné. ˇ (pomalé volání XSLT procesoru, vhodné komplexní zmeny/operace s XML) Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
25 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
ˇ Transformace XML v promenných BPEL procesu Pro konverzi mezi typy dokumentu˚ a operace s XML strukturami. Transformace pomocí XSLT dokumentu. ˚ (XSLT možno zapsat ruˇcneˇ nebo použít vizuální XSLT Mapper)
Podobné jako transformace v komponenteˇ „Mediator“. ˇ být transformace zejména pro (narozdíl od komponenty „Mediator“, zde by mely business, ne pro pˇrevod technických formátu˚ zprav zasílaných mezi službami)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
26 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
ˇ Vstupní a výstupní promenné BPEL procesu
Celý BPEL proces je uzavˇren do „scope“ aktivity „main“. (je to „scope“ všech aktivit BPEL procesu)
V „main“ pˇrednastavené „inputVariable“/ „outputVariable“. ˇ na volání procesu) (obsahují data pˇredaní jako požadavek a odpoved
ˇ Promenné jsou definovány v rámci „scope“ a mají datový typ daný zprávou dle WSDL dokumentu, tj. obsahují XML dle XML Schema. ˇ (promenné „inputVariable“/ „outputVariable“ jsou typu „message“)
ˇ nastavit „outputVariable“, typicky aktivitou „Assign“. Proces by mel (hodnota „outputVariable“ pˇredána klientovi procesu, pˇrímo nebo pomocí callback)
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
27 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
ˇ Aktivita „Assign“ pro modifikaci promenných v BPEL
ˇ Aktivita „Assign“ kopíruje data ze zdrojové do cílové promenné. (atributy „variable“ elementu˚ a )
ˇ Cíl muže ˚ být promenná cˇ i spojení na partnera ( „partnerLink“). (dáno kombinací atributu˚ „variable“ a „part“ v )
ˇ Zdroj muže ˚ být promenná, výraz, XML fragment, cˇ i „partnerLink“. (dáno kombinací atributu˚ „variable“ a „part“ v )
XML fragmenty adresovány zjednodušeným XPath výrazem. (pˇrímo nebo pomocí dialogu XPath Expression Builder)
Aktivita „Assign“ se používá na úpravy XML menšího rozsahu. ˇ použít transformaci XSLT) (obvykle do 10 operací, pro více je vhodnejší Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
28 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
Editor aktivity „Assign“ v aplikaci jDeveloper
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
29 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
Definice BPEL procesu Napojení BPEL procesu na rozhraní webových služeb Aktivity v rámci BPEL procesu
XPath Expression Builder v aplikaci jDeveloper
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
30 / 33
Popis, vlastnosti a použití komponenty „BPEL Process“ Definice BPEL procesu, jeho jednotlivé aktivity ˇ Shrnutí a záver
ˇ Shrnutí a záver „BPEL Process“ se používá k orchestraci služeb dle business procesu. Definován WSDL popisem rozhraní, spojeními partnerských služeb a logikou volání aktivit. Základní aktivity pro komunikaci se službami a okolím. (Invoke, Receive, Reply, Assign, Validate, Transform, Throw, Catch(All), Compensate, Wait, Exit, Empty)
Strukturované aktivity pro definici logiky orchestrace. (Scope, Sequence, If, While, RepeatUntil, ForEach, Flow, Pick)
ˇ Pˇríšte? Koordinace služeb a vzory interakce v „BPEL“ komponenteˇ ( „corelation“ v rámci BPEL procesu, . . . )
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
32 / 33
ˇ Podekování
ˇ byl podpoˇren projektem MŠMT Tento pˇredmet ˇ CZ.1.07/2.2.00/15.0163 „Vzdelávání v IT pro praxi“.
Marek Rychlý
Komponenta „BPEL Process“ v Oracle SOA Suite — Pˇrednáška pro IOA, 30. ˇríjna 2014
33 / 33