25
Oracle BPEL Process Manager Szybkie Wprowadzenie Paweł Zaleski Maciej Zdeb Adam Kaczmarek Marcin Szymczak Politechnika Poznaoska 2009

Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

  • Upload
    others

  • View
    54

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager Szybkie Wprowadzenie Paweł Zaleski

Maciej Zdeb

Adam Kaczmarek

Marcin Szymczak

Politechnika Poznaoska 2009

Page 2: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 2

Spis treści 1 Instalacja .......................................................................................................................................... 3

1.1 Instalacja pakietu Oracle SOA Suite 10g ................................................................................. 3

1.2 Aktualizacja pakietu Oracle SOA Suite 10g do wersji 10.1.3.4 ................................................ 4

2 Wprowadzenie do Oracle BPEL Process Manager .......................................................................... 6

2.1 Wstęp ...................................................................................................................................... 6

2.2 Konfiguracja połączeo do SOA w środowisku JDeveloper ....................................................... 6

2.2.1 Application Server ........................................................................................................... 6

2.2.2 Integration Server ............................................................................................................ 8

2.3 Pierwszy proces BPEL .............................................................................................................. 9

2.4 Aplikacja wykorzystująca Oracle BPEL Process Manager Client Java API ............................. 13

2.5 Proces BPEL wykorzystujący WebServices ............................................................................ 16

2.5.1 Utworzenie WebService’u ............................................................................................. 16

2.5.2 Proces BPEL wywołujący Web Service .......................................................................... 20

Page 3: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 3

1 Instalacja

1.1 Instalacja pakietu Oracle SOA Suite 10g 1. Pobieramy Oracle SOA Suite 10g pod adresem:

http://www.oracle.com/technology/software/products/ias/htdocs/101310.html

2. Rozpakowujemy pliki instalacyjne i uruchamiamy instalacje plikiem setup.exe

3. W pierwszym kroku instalacji podajemy nazwę (dowolną) dla instancji serwera aplikacji oraz

hasło administratora. Potwierdzamy przyciskiem Install.

4. Następnie czekamy, aż instalator wykona wszystkie niezbędne operacje (instalacja trwa dośd

długo).

5. Po zakooczeniu instalacji opuszczamy instalator przy pomocy przycisku Exit.

6. Zalecamy przetestowanie czy pakiet zainstalował się pomyślnie uruchamiając go (menu start

Oracle – [nazwa instancji] > Start SOA Suite)

Jeśli podczas instalacji wystąpiły jakieś błędy należy odinstalowad wszystkie zainstalowane składniki,

następnie usunąd foldery i pliki utworzone przez instalator. Uruchomid ponownie komputer i

powtórzyd instalację. Jeśli błąd się powtórzy możemy szukad rozwiązao na forach Oracle.

Uwaga: Oracle SOA Suite nie zainstaluje się, jeśli na komputerze zainstalowany jest Kaspersky

Antivirus.

Page 4: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 4

1.2 Aktualizacja pakietu Oracle SOA Suite 10g do wersji 10.1.3.4 1. Pobieramy 10.1.3.4 patch dla Oracle SOA Suite 10g pod adresem:

http://www.oracle.com/technology/software/products/ias/htdocs/101310.html

2. Rozpakowujemy pliki instalatora patcha.

3. Przed instalacją poprawki należy dokonad aktualizacji schematu bazy danych pakietu SOA.

W tym celu uruchamiamy Wiersz poleceo, przechodzimy do katalogu do którego

rozpakowaliśmy pliki patcha.

a. Zaktualizowanie schematu środowiska BPEL

i. Przechodzimy do katalogu Disk1\install\soa_schema_upgrade\bpel\scripts

ii. Wpisujemy komendę: msql system/manager@jdbc:polite:orabpel

iii. Czekamy na uruchomienie się narzędzia i pojawienie znaku zachęty SQL>

iv. Wpisujemy: @@upgrade_10131_10134_olite.sql

v. Zamykamy narzędzie poleceniem exit

b. Zaktualizowanie schematu środowiska ESB

i. Przechodzimy do katalogu

Disk1\install\soa_schema_upgrade\esb\sql\other

ii. Wpisujemy komendę: msql system/any@jdbc:polite:oraesb

iii. Czekamy na uruchomienie się narzędzia i pojawienie znaku zachęty SQL>

iv. Wpisujemy: @@ upgrade_10131_10134_olite.sql

v. Zamykamy narzędzie poleceniem exit

c. Restartujemy SOA (zatrzymujemy i uruchamiamy SOA Suite skrótami z menu start).

4. Uruchamiamy plik setup.exe z katalogu Disk1.

5. W pierwszym kroku klikamy Next.

6. W kolejnym kroku wybieramy katalog instalacji patcha. Ważne: Należy z menu

kontekstowego wybrad nazwę katalogu domowego Oracle w którym zainstalowaliśmy Oracle

SOA Suite!!

Page 5: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 5

7. Klikamy Next i w kolejnym kroku podajemy hasło administratora (podane przy instalacji SOA

Suite), po czym ponownie klikamy Next.

8. W kolejnym kroku klikamy Install.

9. Czekamy na zakooczenie instalacji (która trwa długo).

a. Jeśli pojawi się komunikat że instalator nie może uruchomid OPMN (Oracle Process

Manager) zamykamy instalator i w menu start w grupie SOA wybieramy Oracle

Process Manager > Start Oracle Process Manager. Po uruchomieniu OPMN

powracamy do kroku 4.

10. Kooczymy pracę instalatora przyciskiem Exit.

11. Testujemy czy instalacja przebiegła pomyślnie uruchamiając Oracle BPELConsole

(http://localhost:8888/BPELConsole, domyślny login: default, hasło: welcome1) . Jeśli udało

się zalogowad instalacja przebiegła pomyślnie.

Page 6: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 6

2 Wprowadzenie do Oracle BPEL Process Manager

2.1 Wstęp Do przeprowadzenia poniższych dwiczeo konieczne jest zainstalowanie następujących aplikacji

Pakiet Oracle SOA Suite w wersji 10.1.3.4.

W momencie pisania dokumentu była to najnowsza wersja programu, ewentualnie można skorzystad

z wersji kolejnych, jeśli się takie pojawią.

Środowisko programistyczne Oracle JDeveloper w wersji 10.1.3.4.

Nie zaleca się stosowania nowszych wersji środowiska. Środowisko można pobrad pod adresem:

http://www.oracle.com/technology/software/products/jdev/htdocs/soft10134.html.

Po zainstalowaniu środowiska JDeveloper, do prawidłowego przeprowadzenia poniższych dwiczeo,

należy skonfigurowad w nim połączenia do serwera SOA.

2.2 Konfiguracja połączeń do SOA w środowisku JDeveloper

2.2.1 Application Server

1. Uruchamiamy środowisko JDeveloper.

2. Po lewej stronie wybieramy zakładkę Connections

3. Klikamy prawym przyciskiem myszy na grupę Application Server i z menu kontekstowego

wybieramy New Application Server Connection

Page 7: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 7

4. W pierwszym kroku kreatora połączenia podajemy nazwę naszego serwer (dowolną) oraz

wybieramy typ połączenia , w naszym wypadku jest to Autonomiczny OC4J 10g 10.1.3.

5. W kolejnym kroku podajemy nazwę użytkownika i hasło, musi byd ono zgodne z nazwą

użytkownika i hasłem, jakie podaliśmy podczas instalacji pakietu SOA.

Page 8: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 8

6. W trzecim kroku podajemy nazwę hosta komputera, na którym zainstalowaliśmy pakiet SOA

oraz port RMI. Jeśli nie zmienialiśmy domyślnych numerów portów SOA pozostawiamy

numer portu proponowany przez kreator.

7. W ostatnim kroku klikamy w przycisk Test Connection. Jeśli podaliśmy poprawne dane test

powinien zakooczyd się sukcesem. Uwaga: Przed przetestowaniem połączenia należy

uruchomid pakiet SOA!

8. Klikamy Zakoocz.

2.2.2 Integration Server

1. W zakładce Connections klikamy prawym przyciskiem myszy na grupę Integration Server i z

menu kontekstowego wybieramy New Integration Server Connection.

2. W pierwszym kroku kreatora podajemy dowolną nazwę dla naszego połączenia.

3. W kolejnym kroku z menu kontekstowego wybieramy dodany przed chwilą Application

Server oraz podajemy numer portu i protokół z jakiego ma korzystad połączenie. Jeśli nie

zmienialiśmy domyślnych ustawieo w pakiecie SOA pozostawiamy wartości zaproponowane

przez kreator.

4. W ostatnim kroku testujemy połączenie, jeśli test przebiegł pomyślnie klikamy Zakoocz.

Page 9: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 9

2.3 Pierwszy proces BPEL Poniższe dwiczenie pokazuje jak stworzyd prosty proces BPEL w środowisku JDeveloper a następnie

uruchomid go i przetestowad w Oracle Bpel Proces Manager.

1. Uruchom środowisko JDeveloper.

2. Wybieramy File > New…. Wyświetli się lista możliwych projektów do utworzenia. Wybieramy

kategorie BPEL z grupy Integration Tier. Następnie wybieramy szablon projektu BPEL Process

Project i klikamy OK.

3. Podajemy nazwę projektu, resztę opcji pozostawiamy bez zmian, klikamy Finish.

Page 10: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 10

4. Zostanie utworzony projekt BPEL. W projekcie rozwijamy gałąź Integration Content,

następnie otwieramy plik *nazwa naszego projekty+.bpel. Pojawi się graficzny schemat

naszego procesu BPEL.

5. Po prawej stronie w zakładce Components Palette, znajduje się lista składowych procesu

BPEL jakie możemy wykorzystad w naszym procesie umieszczamy je na procesie metodą

„przeciągnij i upuśd”.

6. W naszym przykładzie dodamy element Wait, powoduje on odczekanie przez proces

określonej ilości czasu przed wykonaniem kolejnego kroku, w tym celu wybieramy

komponent Wait przeciągamy go na schemat i upuszczamy między elementami receiveInput i

callbackClient.

7. Klikamy dwukrotnie na dodany element i ustalamy czas oczekiwania For na 10 sekund,

potwierdzamy zmiany przyciskiem OK.

8. Zapisujemy wszystkie zmiany w projekcie (przycisk Save All lub File > Save All).

9. Uruchamiamy pakiet SOA (z menu Start).

Page 11: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 11

10. Kolejnym krokiem jaki wykonamy, jest zainstalowanie procesu na serwerze. W tym celu

klikamy prawym przyciskiem myszy na ikonę projektu, wybieramy Deploy > [nazwa

połączenia Integration Server] > Deploy to default domain.

11. Czekamy na wynik kompilacji, jeżeli przebiegła pomyślnie przechodzimy dalej w przeciwnym

wypadku poprawiamy błędy.

12. Po kompilacji i zainstalowaniu na serwerze możemy przetestowad nasz proces. Uruchamiamy

konsolę BPEL (http://localhost:8888/BPELConsole, domyślny login: default, hasło:

welcome1).

13. Wybieramy zakładkę Processes (znajdują się na niej wszystkie zainstalowane na serwerze

procesy) i wybieramy nasz proces klikając w jego nazwę.

Page 12: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 12

14. Uruchamiamy instancję naszego procesu, w tym celu wybieramy zakładkę Initiate i

naciskamy przycisk Prześlij wiadomośc XML

15. Po uruchomieniu instancji możemy się zapoznad z wynikami jej działania w widokach Visual

Flow (widok graficzny), Audit Trail(plik XML), Debug Instance (debugowanie instancji).

Page 13: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 13

16. Wybierzmy Visual Flow.

17. Jak widad, w tym widoku przedstawiony jest nasz proces. Możemy kliknąd w każdy z

elementów procesu, aby sprawdzid szczegóły jego wykonania. Kliknijmy we wstawiony przez

nas element Wait_1. Wyświetli się następujący ekran. Jak widad zgodnie z naszymi

ustawieniami proces czekał przez 10 sekund.

2.4 Aplikacja wykorzystująca Oracle BPEL Process Manager Client Java API

Poniższe dwiczenie pokazuje jak wykonad prostą aplikację w Javie wykorzystującą Oracle BPEL

Process Manager Client Java API. Stworzona przez nas aplikacja połączy się z menadżerem procesów

BPEL, pobierze instancje powyżej stworzonego procesu oraz wyświetli szczegóły ich wykonania.

Więcej informacji o wykorzystanych klasach znajdziesz w dokumentacji api

http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28986/toc.htm.

1. Uruchom środowisko JDeveloper.

2. Utwórz nowy projekt „Empty Project”. Nadaj mu dowolną nazwę.

3. Kliknij prawym przyciskiem na ikonę projektu z menu kontekstowego wybierz New… i utwórz

w projekcie nową klasę Java (Java Class) nadaj jej nazwę Class1 oraz wygeneruj dla niej

metodę main.

4. Dodaj do projektu biblioteki :

Klikając prawym przyciskiem na ikonę projektu, z menu kontekstowego wybierz Project

properties. We właściwościach projektu wybierz zakładkę Libraries. Kliknij przycisk Add

Jar/Directory. Wszystkie biblioteki znajdziesz w katalogach środowiska JDeveloper.

Page 14: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 14

a. Oc4jclient.jar

b. Orabpel-common.jar

c. Orabpel-thirdparty.jar

d. Orabpel.jar

e. Optic.jar

f. Ejb.jar

5. Dodaj kod metody main klasy Class1 poniższy kod, jest on odpowiedzialny za właściwości

połączenia z serwerem BPEL. W razie potrzeby zmodyfikuj url serwera/hasło.

6. Dodaj w metodzie poniższy kod tworzy on nowy obiekt klasy Locator, która pozwala nam

między innymi na wyszukiwanie procesów i instancji w Oracle BPEL Process Manager.

7. Dodaj w metodzie poniższy kod, jest on odpowiedzialny za wyszukanie procesów o

konkretnej nazwie (zmodyfikuj zmienną pProcessId tak aby zawierała nazwę jaką nadałeś

stworzonemu procesowi).

Properties props = new java.util.Properties();

//sets target bpel platform, oracle installation, this will be oc4j_10g

props.setProperty("orabpel.platform", "ias_10g");

//sets jndi factory class, this is used to locate remote RMI server

props.setProperty("java.naming.factory.initial",

"com.evermind.server.rmi.RMIInitialContextFactory");

//sets target url for target rmi server (oc4j

props.setProperty("java.naming.provider.url",

"opmn:ormi://localhost:6003:home/orabpel");

//sets user name for the remote server

props.setProperty("java.naming.security.principal", "oc4jadmin");

//sets password for the remote server

props.setProperty("java.naming.security.credentials", "TWOJE_HASŁO");

String pProcessId = "PierwszyProces";

// Create the where condition to filter on process id

WhereCondition whereProcessId = new WhereCondition("process_id = ?");

whereProcessId.setString(1, pProcessId);

// Find Instances

IInstanceHandle[] instanceHandles = locator.listInstances(whereProcessId);

Locator locator = new Locator("default", "bpel", props);

Page 15: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 15

8. Dodaj w metodzie kod wypisujący nazwy znalezionych instancji.

9. Uruchom aplikację.

10. Dodaj w pętli kod odczytujący plik XML ze szczegółami wykonania instancji.

11. Uruchom aplikację.

for (int i = 0; i < instanceHandles.length; i++) {

IInstanceHandle instanceHandle = instanceHandles[i];

System.out.println("=============================================");

System.out.println(instanceHandle.getTitle());

System.out.println("=============================================");

}

System.out.println(instanceHandle.getAuditTrail());

Page 16: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 16

2.5 Proces BPEL wykorzystujący WebServices Poniższe dwiczenie pokazuje jak stworzyd proces BPEL który wykorzystuje zewnętrzny Web Service do

pobrania informacji, dla ułatwienia przedstawiony też został proces tworzenia prostego Web

Service’u w środowisku JDeveloper.

2.5.1 Utworzenie WebService’u

1. Uruchom środowisko JDeveloper

2. Stwórz nowy projekt „Empty Project” o nazwie „PierwszyWebService”.

3. Dodaj do projektu klasę Java o nazwie Class1.

4. W klasie dodaj poniższą metodę, którą będzie oferował WebService.

5. Następnie kliknij prawym przyciskiem mysz na ikonę projektu, z menu kontekstowego

wybierz New… i dodaj do projektu Java Web Service (grupa Buisness Tier > Web Services).

6. Pojawi się okno wyboru typu Web Service’u należy wybrad opcję: J2EE 1.4 (JAX-RPC) Web

Service i potwierdzid przyciskiem OK.

7. W pierwszym kroku kreatora wszystkie opcje pozostawiamy jako domyślne. Wybieramy

jedynie naszą klasę w menu kontekstowym Component To Publish.

8. W krokach 2-4 pozostawiamy wartości domyślne.

public String echoDouble (String echo) {

return echo+echo;

}

Page 17: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 17

9. W kroku piątym wybieramy utworzoną przez nas metodę do wystawienia przez Web Service i

klikamy Zakoocz.

10. Zapisujemy wszystkie zmiany (przycisk Save All).

11. Do projektu zostały dodane nowe elementy odpowiedzialne za działanie Web Service’u.

Możesz je przejrzed. W tej chwili najbardziej interesuje nas plik WebServices.Deploy z gałęzi

Resources. Posłuży on do zainstalowania Web Service’u na serwerze aplikaji.

12. Dokonamy teraz instalacji Web Service’u na serwerze aplikacji, żeby to zrobid klikamy

prawym przyciskiem na plik WebServices.Deploy i z menu kontekstowego wbieramy Deploy

to > [nazwa serwera aplikacji], pojawi się okno w którym klikamy przycisk OK, nie

wprowadzając żadnych zmian.

Page 18: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 18

13. Testujemy Web Service z poziomu konsoli Aplication Server Control

(http://localhost:8888/em). Podajemy nazwę użytkownika oc4jadmin i hasło, które

podaliśmy instalując SOA.

14. Po otworzeniu się konsoli na liście aplikacji rozwijamy gałąź home i szukamy naszego

projektu. Następnie klikamy w jego nazwę.

15. Pojawią się szczegóły naszej aplikacji. Wybieramy zakładkę Web Services. Następnie klikamy

na nazwę naszego Web Service’u.

Page 19: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 19

16. Wyświetlony zostanie widok zawierający szczegóły dotyczące naszego service’u. Z sekcji

Related Links wybieramy Test Service. A w kolejnym widoku klikamy w przycisk Test Web

Service

17. Pojawi się widok który pozwoli nam przetestowad działanie stworzonego przez nas Web

Service’u. Możemy go uruchomid podając wartośd parametru echo i klikając przycisk Invoke

18. Skopiuj i zapisz URL linku ServiceDescription, jest to URL do pliku WSDL WebService’u.

Będzie on nam potrzebny przy definiowaniu procesu BPEL.

Page 20: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 20

2.5.2 Proces BPEL wywołujący Web Service

1. Uruchom środowisko JDeveloper.

2. Utwórz nowy projekt „BPEL Proces Project”. Projekt ma zawierad proces synchroniczny,

zaznacz opcję Synchronous BPEL Proces i podaj dowolną nazwę. Potwierdź przyciskiem

Finish.

3. Automatycznie otworzy się edytor graficzny pliku .bpel.

4. Kliknij prawym przyciskiem myszy po prawej stronie schematu na szare pole oznaczone jako

Services, z menu kontekstowego wybierz opcję Create Partner Link…

Page 21: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 21

5. W oknie dialogowym w polu WSDL File wpisz zapisany wczesniej URL do pliku WSDL

stworzonego Web Service’u. Następnie kliknij przycisk Parse WSDL File (niebieski strzalki).

Pojawi się okno dialogowe z pytaniem, klikamy YES.

6. Następnie wybieramy wartości pól Partner Role i My Role, posiadają one po jednej

dostępnej opcji. Klikamy OK.

Page 22: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 22

7. Do procesu został dodany link do naszego Web Service’u.

8. Z palety komponentów wybieramy element Invoke i umieszczamy go między elementami

receiveInput i callbackClient.

9. Klikamy na strzałkę po prawej stronie nowego elementu i przeciągamy ją na linku do naszego

service’u. Pojawi się okno dialogowe.

10. W oknie dialogowym przy polach Input Variable i Output Variable klikamy przyciski różdżki

(Automaticlly Create …). W oknach które się pojawią klikamy OK. Efekt powinien byd taki jak

na obrazku (pojawią się nazwy utworzonych zmiennych).

Page 23: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 23

11. Potwierdzamy zmiany przyciskiem OK. Na schemacie pojawi się powiązanie między

elementem Invoke, a linkiem do Web Service’u

12. Przy elemencie Invoke pojawi się żółta flaga, oznacza ona, że dla danego elementu jest

ostrzeżenie. Kliknij w nią aby przeczytad ostrzeżenie. W tym wypadku jest to ostrzeżenie, że

nie została zaininicjalizowana zmienna wejściowa elementu Invoke (parametr wywołania

metody z Web Service’u).

13. Przypiszemy teraz zmienną wejściową naszego procesu BPEL do zmiennej wejściowej

elementu Invoke. W tym celu przed element Invoke wstaw element Assign z palety

komponentów.

14. Kliknij dwukrotnie na wstawiony element.

15. Wyświetli się okno dialogowe. Wybierz w nim zakładkę Copy Operation, a nastepnie kliknij

przycisk Create wyświetli się lista z której wybierz Copy Operation.

Page 24: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 24

16. W oknie przypisywania zmiennych przypisz zmienną inputValue do

Invoke_1_echoDouble_InputVariable. Dla obu zmiennych musisz rozwinąd ich gałęzie do

kooca i wybrad ostatnie z możliwych składowych zmiennych (jak na obrazku), a następnie

dwukrotnie kliknij przycisk OK.

17. Żółta flaga powinna zniknąd.

18. Kolejnym krokiem jaki wykonamy jest przypisanie zmiennej wyjściowej elementu Invoke do

zmiennej wyjściowej procesu.

19. W tym celu wstawiamy kolejny element Assign, w tym przypadku za elementem invoke.

20. Podobnie jak robiliśmy ze zmiennymi wejściowymi przypisujemy zmienną

Invoke_1_echoDouble_OutputVariable do outputVariable (Kroki 15 i 16).

21. Zapisujemy wszystkie zmiany.

22. Instalujemy proces na serwerze. (klikamy prawym przyciskiem mysz na ikonie projektu, z

menu wybieramy Deploy > [nazwa połączenia Integration Server] > Deploy to default

domain)

23. Uruchom konsolę BPEL (http://localhost:8888/BPELConsole, domyślny login: default, hasło:

welcome1).

24. Uruchom instancję stworzonego procesu podając zminną wejściową (grupa payload, pole

tekstowe input).

25. Obejrzyj efekt działania instancji w widoku Visual Flow.

Page 25: Oracle BPEL Process Managersirius.cs.put.poznan.pl/~inf75975/bpel/Oracle Bpel... · Oracle BPEL Process Manager - Szybkie Wprowadzenie Strona 5 7. Klikamy Next i w kolejnym kroku

Oracle BPEL Process Manager - Szybkie Wprowadzenie

Strona 25

a. Po kliknięciu na element Invoke_1 powinien pojawid się analogiczny wynik.

Obrazek przedstawia przykład uruchomiony z ciągiem wejściowym „Echo”. Jak widad

Web Service zadziałał i zgodnie z oczekiwaniami na wyjściu otrzymaliśmy ciąg

„EchoEcho”.