SOAP

Webdienste ermöglichen eine einfache Kommunikation zwischen Anwendungen in einer sehr heterogenen Umgebung, da die Kommunikation auf plattformunabhängigen Standards basiert – insbesondere XML und HTTP. Anwendungen senden sich gegenseitig XML-Nachrichten, die die Abfragen und Antworten der einzelnen Anwendungen übertragen. SOAP, Simple Object Access Protocol, stellt eine Möglichkeit vor, wie ein Programm in einem Betriebssystem mit einem Programm im gleichen oder in einem anderen Betriebssystem kommuniziert. Es ist ein Netzwerkprotokoll, mit dessen Hilfe Daten zwischen Systemen ausgetauscht werden können. Als Mechanismus für den Informationsaustausch benutzt SOAP die bereits erwähnten HTTP (Hypertext Transfer Protocol) und XML (Extensible Markup Language), die eine Lösung für das Problem, wie unterschiedliche Betriebssysteme und Anwendungen über Netzwerk miteinander kommunizieren, darstellen. Ein Vorteil von SOAP ist, dass Programmaufrufe in der Regel durch Firewall-Server gehen, die auch andere als Anwendungs-Anfragen überwachen (durch den designierten Port-Mechanismus).

Hintergrund

Hinter der Existenz und Entwicklung dieses Netzwerkprotokolls stehen ein US-amerikanischer Softwareentwickler Dave Winer und der "Software-" und Hardwarehersteller Microsoft, die im Jahr 1998 die Spezifikation für XML-RPC entwickelt haben. SOAP hat daraus als eine Weiterentwicklung entstanden und ein Jahr später, 1999, wurde zum ersten Mal in Version 0.9 veröffentlicht. Heute werden zwei SOAP-Versionen verwendet: SOAP 1.1 und SOAP 1.2. Zu diesem Zeitpunkt gibt es bereits genügend SOAP-Implementierungen und Einstellungen für netzwerkorientierte Sprachen, beispielsweise SOAP: Lite für Perl, Apache Axis und Apache SOAP 2 für Java sowie Implementierungen für C #, Delphi, VB usw.

Fakten

Zu den größten Vorteilen dieses Netzwerkprotokolls gehört die Sprachneutralität, da SOAP in jeder Sprache entwickelt werden kann. Weiter ist es die Interoperabilität und Plattformunabhängigkeit, und zwar, weil SOAP in jeder Sprache implementiert und in jeder Plattform ausgeführt werden kann. SOAP-Nachrichten sind im sehr einfachen XML-Format geschrieben, dementsprechend gehört die Einfachheit auch zu den Eigenschaften. Skalierbarkeit: SOAP verwendet das HTTP-Protokoll für den Transport, wodurch es skalierbar wird. Auf der anderen Seite wird SOAP als langsam beschrieben, da das XML-Format länger ist und analysiert werden muss. Zusätzlich ist SOAP WSDL-Abhängigkeit, das heißt, dass es von WSDL abhängt und keinen standardisierten Mechanismus für die dynamische Erkennung der Dienste hat.