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, von der eine Erkennungsmethode für verteilte Services definiert wird, von der Verweise auf Servicebeschreibungen am Point-of-Offering des Service-Providers bereitgestellt werden, indem sie angibt, wie eine Website im Hinblick auf verfügbare Web-Services zu durchsuchen ist. In einem WSIL-Dokument werden die Positionen auf einer Website definiert, an denen Sie nach Web-Service-Beschreibungen suchen können. Da WSIL vor allem für die Erkennung von verteilten Services konzipiert, ist die WSIL-Spezifikation eine Ergänzung zu UDDI, weil die Erkennung von auf Websites verfügbaren Services erleichtert wird, die eventuell noch nicht in einer UDDI-Registry aufgelistet sind. In einem separaten Abschnitt dieser Dokumentation wird die Beziehung zwischen UDDI und WSIL besprochen. 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 dieser Entwicklungsumgebung 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 in den offiziellen Spezifikationen.
JSR-109
JSR-109 (Implementierung von Web-Services von Unternehmen) definiert das Programmiermodell und die Laufzeitarchitektur zum Einrichten und Suchen von Web-Services in der Java EE--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
Transporte
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
Sicherheit
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 und Java EE 1.5
JSR 109