 |
| Datenintegration mit SOAP
|
|
(März 2005)
|
| Inhalt dieses Artikels:
Ausgangsszenario
| Wie ein Brief |
"Zauberkürzel"
WSDL
|
|
| |
| Alle Teilnehmer innerhalb von IT-Projekten –
speziell im SAP-Umfeld – wären froh, wenn man sich die
oft sehr komplexen Schnittstellendesign-Meetings sparen könnte.
Über die "Hoffnung" Simple Object Application Protocol
(SOAP) berichtet Adrian Kapornyai in der aktuellen Ausgabe des Spezial-Magazins
S@PPORT:
Am Integrationsmarkt, speziell bei der Schaffung von Schnittstellenstandards,
hat sich viel getan. Neue Begriffe wie SOAP oder Web Services erhitzen
die Gemüter. Speziell der XML-Dialekt SOAP ist in aller Munde
- und mittlerweile haben sich Software-Riesen wie IBM, Microsoft
oder SAP auf einen Standard geeinigt und fanden zu einem gemeinsamen
Konsens: Datenintegration mit so genannten Web Services (SOAP-basierenden
Prozesse) werden die Zukunft systemübergreifender – ja
sogar systeminterner – Kommunikation darstellen.
|
| Ausgangsszenario |
|
| |
|
Zur besseren Veranschaulichung eines
Schnittstellenintegrationsszenarios mit SOAP nachfolgend ein Projektklassiker:
Softwarelösung XY muss mit SAP R/3-Backend bidirektional (synchron)
Daten austauschen.
Nun werden viele durch die Verwendung von Begrifflichkeiten wie
Web Services gedanklich in eine falsche Richtung geleitet, indem
sie annehmen, dass Web Services nur zur Integration von Daten über
das Medium Internet einsetzbar sind. Das ist natürlich auch
ein Einsatzgebiet dieser Technologie, allerdings bedeutet dies nicht,
dass SOAP und Web Services deshalb nicht zur unternehmensinternen
Kommunikation der eingesetzten Systeme und Applikationen verwandt
werden können.
Im Gegenteil: Web Services zeigen sich als eine sehr attraktive
Alternative zur Abbildung interner Kommunikationswege, los gelöst
von proprietären Schnittstellenstandards. SAP selber verwendet
innerhalb des "NetWeaver"-Systemverbundes Web Services
zum Datenaustausch zwischen den einzelnen SAP-Komponenten.
Web Services basieren auf XML. Die EXtensible Markup Language bietet
als universelles Datenaustauschmedium die Grundlage für die
Schaffung von systemunabhängigen Schnittstellen. Ein XML-Dokument
kann in seiner Struktur frei definiert werden und Daten innerhalb
dieser Struktur beinhalten bzw. transportieren. SOAP ist ein XML-Dialekt,
was nichts anderes bedeutet, dass eine SOAP/XML-Nachricht bestimmten
strukturellen Aufbauregeln entspricht. |
|
| Wie
ein Brief |
|
| |
|
Um es einfach darzustellen, könnte
man eine Web Service-Kommunikation bzw. eine SOAP-Nachricht mit
einem Brief vergleichen. Wenn man jemanden Informationen postalisch
zukommen lassen will, benötigt man neben den eigentlichen Informationen
(SOAP-Body) einen Briefumschlag (SOAP-Envelop), auf dem man den
Absender und den Empfänger hinterlegt. Die Post (http bzw.
TCP/IP als Trägerprotokoll) interpretiert die Daten auf dem
Umschlag, stellt die Nachricht (den Brief) zu und kümmert sich
darum, dass die Nachricht mit einem entsprechenden Vermerk an den
Absender zurückgeschickt wird, wenn der Empfänger unbekannt
oder nicht erreichbar ist. Genau dieses Prinzip wird bei einer Web
Service-Kommunikation mit SOAP auch angewandt.
Wie kommt nun eine Schnittstellenkommunikation von zwei grundverschiedenen
Systemen, basierend auf einer SOAP-Nachricht, zustande? Zum besseren
Verständnis der Thematik wurde in obigem Beispiel das "Pferd
von hinten aufgezäumt". Das Erzeugen und Versenden der
SOAP-Nachricht ist natürlich der letzte Schritt und das Ergebnis
der implementierten Schnittstelle.
Jede Schnittstelle aber hat einen eigenen Aufbau. Nehmen wir als
Beispiel ein SAP Standard-BAPI (Business Application Programming
Interface). BAPIs haben, wie jeder Funktionsbaustein im "SAP
R/3", Definitionen, mit welchen Werten sie "gefüttert"
werden wollen (Importparameter) und welche Werte diese Funktion
dem Aufrufer (z.B. externe Applikation) zurückliefert (Exportparameter).
Genau diese Informationen gilt es auf eine universelle Schnittstellenebene
zu heben, damit jede externe Applikation die Funktionalität
dieses BAPIs nutzen kann. |
|
| "Zauberkürzel"
WSDL |
|
| |
|
| Das "Zauberkürzel" in
diesem Zusammenhang ist WSDL. Die so genannte Web Service Descripition
Language ist eine Schnittstellen-Beschreibungssprache, welche diese
Informationen des BAPIs in eine allgemeingültige Sprache (XML)
übersetzt. Somit wird jede Applikation, die XML-fähig
ist, in die Lage versetzt, Daten mit einem völlig anderen System,
das unter Umständen in einer anderen Programmiersprache entwickelt
wurde, auszutauschen.
Damit das beschriebene Procedere umgesetzt werden kann, müssen
die Systeme, zwischen denen eine derartige Schnittstelle implementiert
werden soll, eine Voraussetzung erfüllen: Sie sollten XML verstehen.
Bei SAP ist das ab dem WAS 6.20 (Web Application Server), der den
SAP-Kernel repräsentiert, kein Problem, da SAP ab diesem Release
direkt ohne Middleware eine Kommunikation via Web Service ermöglicht.
Bei externer (meist alter) Software, welche dies im Standard nicht
unterstützt oder bei SAP-Systemen unterhalb des beschriebene
Releases, muss eine Middleware-Komponente zum Einsatz kommen. Diese
Komponente könnte zum Beispiel auf der SAP-Seite der "SAP
Business Connector" oder seitens externer Applikationen das
Open Source Framework "Apache Axis" sein.
|
|
Nähere Informationen in der neuesten Ausgabe von S@PPORT
.
Der Verlag GmbH behält sich alle Rechte am Artikel vor. ©
2005 MarkIT Communication
|
| GULP
Membership Area |
|
S@PPORT - das monatliche Spezial-Magazin für alle
SAP-Anwender. Als unabhängige SAP-Zeitschrift bietet
S@PPORT wertvolle Unterstützung für die Auswahl,
Installation und den Betrieb von SAP-Lösungen. GULP
Member erhalten 20 Prozent Rabatt auf das Jahresabonnement.
|
|
| Weitere
Informationen zur GULP Membership |
|
Kommentare zu diesem Artikel:
|