Für eine erfolgreiche Orchestrierung ist es notwendig, dass die in den Prozess integrierten Web Services die Standards WSDL und SOAP unterstützen.
Ein Service besteht in den meisten Fällen aus mehreren Teilaufgaben, die durch einzelne, in den Prozess eingebundene Services erfüllt werden. Es ist zu bestimmen, welche Services benötigt werden und ob sie bereits vorhanden sind oder erst erstellt werden müssen. Sind geeignete Services verfügbar, muss bekannt sein, wo sie sich befinden. Um auf sie zugreifen zu können, müssen sie über eine WSDL verfügen. Die WSDL ist Voraussetzung für die Integration der Service in den BPEL-Prozess. Ebenfalls bekannt sein sollte, wo der orchestrierte Service anschließend bereitgestellt wird und wie er aufgerufen werden kann. Der erstellte Service muss ebenfalls über eine WSDL verfügen.



Erstellung des BPEL-Dokumentes


Die Beschreibung des Prozesses erfolgt mit der Business Process Execution Language. Das BPEL-Dokument dient zur Steuerung des Prozesses. In ihm wird die Reihenfolge der Aufrufe der integrierten Dienste festgelegt.

Die Erstellung des BPEL-Prozesses kann manuell oder mit Unterstützung von Software erfolgen. Gerade bei komplex strukturierten Prozessen ist die Erstellung des BPEL-Dokumentes mit Hilfe eines so genannten Designers komfortabel möglich. Hier können die Aktivitäten per Drag & Drop in den BPEL-Prozess eingebunden werden. Die Umsetzung in BPEL-Code erfolgt automatisch während der Erstellung.

Die folgende Abbildung zeigt die Oberfläche des Oracle JDevelopers mit einem Auszug aus einem BPEL-Prozess.


Im ersten Schritt werden alle für den Prozess relevanten Aktivitäten eingebunden. Grundsätzlich verfügt jeder Prozess über eine receive-Aktivität für den Empfang der Nutzeranfrage, sowie über eine reply -Aktivität für das Senden der Antwort an den Nutzer. Weiterhin sind Invoke-Aktivitäten für den Aufruf der eingebundenen Dienste uns Assign-Aktivitäten für die Übertragung von Variablenwerten zwischen den Partnern erforderlich. Abhängig vom Prozessaufbau können weitere Aktivitäten in den Prozess eingebunden werden.
Die Integration der Web Services erfolgt über die Erstellung von partnerLinks. Dabei werden die Dienste durch die Angabe der WSDL-Datei implementiert.

Die Abbildung veranschaulicht, den Aufbau eines einfachen Prozesses. Dieser enthält die erwähnten Aktivitäten und zwei Web Services.




Bereitstellen und Ausführen des Web Services


Nach der Modellierung des BPEL-Prozesses muss dieser auf den BPEL-Server übertragen werden. Dieser Vorgang wird als Deployment bezeichnet und erfolgt vom Designer aus. Dabei wird eine Datei erstellt, die alle für die Ausführung des Prozesses relevanten Services enthält. Beim Aufruf des Services durch einen Nutzer greift der Server auf diese Datei zu.

Der Zugriff auf Web Services erfolgt generell über das WSDL-Dokument. Dieses wird eingelesen und vom entsprechenden Client interpretiert. In die generierte Eingabeoberfläche gibt der Nutzer Werte für die Anfrageparameter ein und startet den Prozess durch Senden der Anfrage an den Service. Der Dienst sendet nach erfolgreicher Abarbeitung die Antwort an den Client. Der Aufruf der Services kann über die Konsole des BPEL-Servers oder SOAP-Clients im Internet erfolgen. Auch über die Software Altova XMLSpy können SOAP-Anfragen an Dienste gestellt und SOAP-Antworten erhalten werden. Die folgenden Abbildungen zeigen die Oberfläche der Oracle BPEL-Konsole mit Eingabemaske und mit Anzeige des Ergebnisses.