Service Oriented Architecture ist zweifelsohne eines der Buzzwords der letzten Jahre. Technische Grundlage hierzu sind in der Regel XML-basierte Web Services. Ein Anhänger dieser Technologien ist offensichtlich der IONA CTO Eric Newcomer, der das umfangreiche Wissen rund um dieses Thema in seinem Buch „Understanding Web Services“ weitervermitteln will.
Schon beim ersten Stöbern durch das Buch wird schnell klar, dass es sich um kein Programmierhandbuch für den SOAP-interessierten Java-Programmierer handelt. Vielmehr versucht der Autor, die theoretischen Grundlagen der verschiedenen Technologien zu veranschaulichen. Hierbei bewegt er sich zumeist auf einer sehr schematischen Ebene und streut nur hin und wieder das eine oder andere XML-Beispiel ein. Informationen zu den verschiedenen verfügbaren APIs oder Programmbeispiele fehlen gänzlich.
Den Einstieg in die Thematik bildet ein Überblick über XML und ergänzende Technologien: Wie definiere ich ein XML Schema, auf welche Weise verarbeite ich mit DOM und SAX ein XML-Dokument und transformiere es mit XSLT oder selektiere XPath-Teile? Immer wieder verweist der Autor auf die Möglichkeiten der am Markt verfügbaren Werkzeuge, insbesondere auf die aus seinem Hause IONA.
Ausgestattet mit dem obligatorischen XML-Basiswissen lernt der Leser nun, wie er in WSDL (Web Services Description Language) die Schnittstelle eines Web Service beschreibt. Hierbei geht der Autor detailliert auf die einzelnen Bestandteile eines WSDL-Dokuments ein. Dies mag für Entwickler von Web Services Middleware interessant sein, geht jedoch für den durchschnittlichen Softwareentwickler wahrscheinlich sehr in die Tiefe. Dieser wird auf die verfügbare Middleware zurückgreifen und daher wahrscheinlich höchstens beim Debuggen der Anwendung einen näheren Blick auf den XML-Datenaustausch werfen.
In ähnlicher Detailtiefe beschreibt der Autor nachfolgend den Zugriff auf Web Services mit dem SOAP-Protokoll (Simple Object Access Protocol). HTTP- und XML-Beispiele veranschaulichen wiederum, welche Nachrichten über die Leitung gehen. Hierbei vergisst der Autor nicht, die Unterschiede zwischen synchroner und asynchroner Kommunikation über SOAP aufzuzeigen. Auch in diesem Abschnitt sucht man leider wieder vergeblich nach Programmbeispielen. Es folgt das obligatorische Kapitel über UDDI Registries, in dem der Autor wiederum sehr schematisch und mit einigen XML-Beispielen aufzeigt, wie man Web Services registrieren und in Registries finden kann.
Es folgt ein Blick über den SOAP-Zaun in Form eines 30 Seiten umfassenden Überblicks über die ebXML-Technologie. ebXML ist anders als SOAP keine reine Kommunikationsbasistechnologie, sondern stellt eine Umgebung zur Prozessintegration über Unternehmensgrenzen dar. Der Autor zeigt in kompakter und leicht verständlicher Form auf, welche Schritte zur Integration von Abläufen mit ebXML durchzuführen sind.
Im folgenden Abschnitt lernt der Leser verschiedene ergänzende Technologien kennen: Wie kann man seine SOAP-Nachrichten per HTTPS verschlüsselt übermitteln, mit SAML ein Single-Sign-On realisieren, mit XKMS öffentliche Schlüssel verteilen, Prozessdefinitionen in XLANG beschreiben oder verteilte Transaktionen realisieren? Den Abschluss bildet ein leider recht oberflächlicher und nicht mehr ganz aktueller Überblick über die verfügbaren Web-Services-Implementierungen.
"Understanding Web Services" wird seinem Titel gerecht – nach der Lektüre kennt und versteht der Leser die verschiedenen Web-Services-Technologien. Aufgrund der schematischen Darstellung eignet es sich jedoch eher für Architekten oder Projektleiter. Entwickler werden den fehlenden Bezug auf aktuelle APIs vermissen und für Entscheider geht das Buch zu sehr in die Tiefe.



