Web-Services - Standards

Eines der Schlüsselattribute von Internetstandards besteht darin, dass sie sich auf Protokolle konzentrieren, nicht auf Implementierungen. Das Internet setzt sich aus heterogenen Technologien zusammen, die erfolgreich über gemeinsam genutzte Protokolle zusammenwirken. Dadurch wird verhindert, dass einzelne Anbieter das Internet mit einem einzigen Standard dominieren. Open-Source-Softwareentwicklung spielt bei der Bewahrung der Interoperabilität von anbieterimplementierten Standards eine entscheidende Rolle.

Die folgenden Standards übernehmen in Web-Services Schlüsselrollen: Universal Description, Discovery and Integration (UDDI), Web Services Description Language (WSDL), Web Services Inspection Language (WSIL), SOAP und Web Services Interoperability (WS-I). Die Beziehung zwischen diesen Standards wird in Abbildung 2 dargestellt.

Die UDDI-Spezifikation definiert offene, plattformunabhängige Standards, mit denen Unternehmen in die Lage versetzt werden, Informationen in einer globalen Geschäftsregistry gemeinsam zu nutzen, Services in der Registry zu suchen und zu definieren, wie die Interaktion über das Internet stattfinden soll. Weitere Informationen zu UDDI finden Sie unter www.uddi.org

WSIL ist eine XML-basierte offene Spezifikation, die eine Erkennungsmethode für einen verteilten Service definiert, der Verweise auf Servicebeschreibungen am Point-of-Offering des Service-Providers liefert, indem er angibt, wie eine Website im Hinblick auf verfügbare Web-Services zu durchsuchen ist. Ein WSIL-Dokument definiert die Standorte in einer Website, an denen Sie nach Web-Service-Beschreibungen suchen können. Da WSIL die Erkennung von verteilten Services fokussiert, ist die WSIL-Spezifikation eine Ergänzung zu UDDI, indem die Erkennung von auf Websites verfügbaren Services erleichtert wird, welche eventuell noch nicht in einer UDDI-Registry aufgelistet sind. In einem separaten Abschnitt dieser Dokumentation wird die Beziehung zwischen UDDI und WSIL erläutert. Weitere Informationen zu WSIL finden Sie unter www.ibm.com/developerworks/webservices/library/ws-wsilspec.html

WSDL ist eine XML-basierte offene Spezifikation, die die Schnittstellen zu und die Instanzen von Web-Services im Netz beschreibt. Sie ist erweiterbar, d. h., Endpunkte können unabhängig von Nachrichtenformaten oder Netzprotokollen beschrieben werden, die für die Kommunikation genutzt werden. Unternehmen können die WSDL-Dokumente für Ihre Web-Services über UDDI, WSIL oder über das Broadcasting der URLs zu ihren WSDL-Dokumenten per E-Mail oder über ihre Website verfügbar machen. WSDL wird als separates Thema in dieser Dokumentation behandelt. Weitere Informationen zu WSDL finden Sie unter www.w3.org/TR/wsdl.

SOAP ist ein XML-basierter Standard für das Messaging über HTTP und andere Internetprotokolle. Es handelt sich um ein schlankes Protokoll für den Informationsaustausch in einer dezentralen, verteilten Umgebung. SOAP basiert auf XML und besteht aus drei Teilen: SOAP aktiviert die Bindung und die Verwendung von erkannten Web-Services, indem es einen Nachrichtenpfad für die Weiterleitung von Nachrichten definiert. SOAP kann verwendet werden, um UDDI nach Web-Services abzufragen. Weitere Informationen zu SOAP 1.1 (SOAP 1.2 wird nicht von den Web-Service-Tools unterstützt) finden Sie unter www.w3.org/TR/SOAP

Abbildung 2. Beziehungen zwischen SOAP, UDDI, WSIL und WSDL.

Abbildung veranschaulicht die Beziehungen zwischen SOAP, UDDI, WSIL und WSDL.

Ein Service-Provider ist der Host für einen Web-Service und macht diesen über Protokolle wie SOAP/HTTP oder SOAP/JMS zugänglich. Der Web-Service wird durch ein WSDL-Dokument beschrieben, das auf dem Server des Providers oder in einem speziellen Repository gespeichert wird. Das WSDL-Dokument kann über Verweise von der UDDI-Geschäftsregistry oder von WSIL-Dokumenten verfügen. Diese enthalten Zeiger auf die WSDL-Dateien des Web-Service.

Das Binding-Profil 'WS-I Simple SOAP Binding' und das Anschlussprofil 'WS-I Attachments' umreißen die Anforderungen, denen WSDL und der Datenverkehr des Web-Service-Protokolls (SOAP/HTTP) entsprechen müssen, um WS-I-Konformität für sich beanspruchen zu können. Die WS-I-Validierungstools für Web-Services unterstützen derzeit die Profile 'WS-I Simple SOAP Binding 1.0' und 'Attachment 1.0'. Weitere Informationen zu den Spezifikationen finden Sie auf der Website von WS-I unter http://www.ws-i.org. Wählen Sie dort Resources und anschließend Documentation aus.

Es werden außerdem mehrere neue Standards für Web-Services von den Rational Developer-Produkten unterstützt. Hierzu gehören:
JAX-RPC
JAX-RPC steht für Java API for XML-based RPC (Java-Api für XML-basierten Fernprozeduraufruf, Remote Procedure Call - RPC), auch bekannt als JSR-101. Diese Spezifikation beschreibt Java Application Programming Interfaces (Java-APIs) und Konventionen zum Erstellen von Web-Services und Web-Service-Clients, die Fernprozeduraufrufe (RPCs) und XML verwenden. Dadurch werden Java-zu-WSDL-Zuordnungen und WSDL-zu-Java-Zuordnungen standardisiert; außerdem werden die Kern-APIs zum Entwickeln und Implementieren von Web-Services und Web-Service-Clients auf der Java-Plattform bereitgestellt. Weitere Informationen finden Sie bei den Offiziellen Spezifikationen.
JSR-109 und JSR-921
JSR-109 und JSR-921 (Implementierung von Web-Services von Unternehmen) definieren das Programmiermodell und die Laufzeitarchitektur zum Einrichten und Suchen von Web-Services in der J2EE-Umgebung, genauer gesagt in den Web-, EJB- und Clientanwendungscontainern. Eines der Hauptziele ist dabei die Sicherstellung, dass die Implementierungen von Anbietern zusammenarbeiten können. Weitere Informationen finden Sie in den offiziellen Spezifikationen:
WS-S
Diese Tools unterstützen den Standard 'OASIS Web Services Security 1.0'. Weitere Informationen über die verschiedenen Komponenten dieses Standards finden Sie unter:

Die Web-Service-Tools unterstützen die folgenden Spezifikationen:

Technologie oder Spezifikation Version oder unterstützte Stufe
Transportprotokolle
HTTP/HTTPS v1.0 und v1.1
JMS  
Messaging
SOAP Specification v1.1
SOAP Attachements  
Beschreibung
UDDI v2.0
WSDL v1.1
WSIL v1.0
Security
WS-Security OASIS Standard 1.0
Interoperabilität
WS-I Basic Profile 1.1.2
WS-I Simple SOAP Binding Profile 1.0.3
WS-I Attachments Profile 1.0
Sonstige Standards  
JAX-RPC v1.0 für J2EE 1.3, v1.1 für J2EE 1.4
JSR 109 J2EE 1.3
JSR 921 J2EE 1.4