Sun macht Java fit für Web-Services

18.07.2001
Von 
Wolfgang Sommergut ist Betreiber der Online-Publikation WindowsPro.

Die Universal Description, Discovery und Integration (UDDI) dient dem Registrieren und Auffinden von Diensten, beides erfolgt über Soap-Nachrichten. Eine Abfrage gibt einen Zeiger auf die Website des Anbieters zurück, wo sich die genaue Beschreibung der zugänglichen Funktionen befindet. Die Publizierung von Methoden und der verlangten Parameter leistet dort die Web Services Description Language (WSDL), eine Art Interface Definition Language (IDL) im XML-Format. Für den synchronen Aufruf entfernter Prozeduren oder die asynchrone Zustellung von Nachrichten dient wiederum Soap, seinerseits ein XML-basierendes Protokoll über HTTP. Insgesamt ist bei den Web-Services von einer Infrastruktur für verteilte, aber lose gekoppelte Internet-Anwendungen die Rede.

Aufgrund der XML-Lastigkeit der Web-Services bietet Sun in Java Schnittstellen zur Verarbeitung derart strukturierter Daten an. Die Java APIs for XML Processing (Jaxp) unterstützten bereits in der Version 1.0 den W3C-Standard Document Object Model (DOM) und das Simple API for XML (SAX). Das eben erschienene Update 1.1 unterstützt Level 2 der beiden XML-APIs und definiert zudem eine Schnittstelle namens Transformation API for XML (Trax) zu XSLT-Prozessoren. Jaxp 1.1 wird Bestandteil von J2SE 1.4 sein.

Als Folge der beschriebenen Konflikte zwischen dem Java-Fahrplan und den kurzfristigen Anforderungen durch die Web-Services bleiben aber die Jaxp die einzigen XML-APIs, die den Weg in die J2SE-Kerndistribution finden. Zu den optionalen Packages zählen die Java APIs for XML Messaging (Jaxm), die für das Verpacken, Transportieren und Weiterleiten von XML- und Nicht-XML-Daten zuständig sind. Sie unterstützen sowohl Soap 1.1 with Attachments als auch das Messaging-Verfahren von ebXML. Ebenfalls auf Soap setzt Jax-RPC auf, nutzt dieses aber nicht für asynchrones Messaging, sondern für den Aufruf von entfernten Methoden via Remote Procedure Call (RPC). Dem Eintragen in und der Abfrage von UDDI und ebXML-Registrierungen dienen die Java APIs for XML Registries (Jaxr). Eine weitere XML-Schnittstelle namens Java Architecture for XML Binding (Jaxb) dient nicht direkt der Implementierung von Web-Services, könnte aber durch die Abbildung von XML-Daten auf Java-Objekte unter Verwendung

eines Schema-Compilers die Verarbeitung solcher Business-Informationen beschleunigen. Nachdem DOM-Parser beim Eintreffen einer großen Zahl von Soap-Nachrichten möglicherweise bald an ihre Leistungsgrenzen stoßen, könnte sich Jaxr in diesem Zusammenhang als interessante Alternative erweisen.

XML-APIs: Jax Pack