Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

31.08.2001 - 

Web-Services versprechen Mobilität und Systemunabhängigkeit

Das Ende der Plattformkriege?

31.08.2001
MÜNCHEN (wm) - Web-Services sind der Hype des Jahres. Keine Produktankündigung kommt mehr ohne den Hinweis auf diese Internet-Anwendungen aus. Doch die Definitionen der Hersteller unterscheiden sich und sind oftmals eher vage.

Losgetreten wurde der ganze Hype um die Web-Services zweifellos von Microsoft, nachdem die Redmonder im Juni des letzten Jahres ihre .NET-Strategie erstmals öffentlich vorgestellt haben. Dass es sich dabei, anders als erwartet, nicht um Marketing-Blasen handelte, zeigte die gleichzeitige Präsentation der Entwicklungsumgebung Visual Studio .NET, die unter anderem für die Entwicklung von Web-Services dient.

Bereits ein Jahr vor Microsoft hatte Hewlett-Packard mit E-Speak eine neue Architektur für Internet-Anwendungen angekündigt, die sich nun in einem größeren Rahmen unter dem Schirm von "Netaction" wieder findet. Auch Sun präsentierte kurz nach der .NET-Premiere mit dem Open Network Environment (ONE) eilig seine Pläne zu Web-Services. Mittlerweile haben IBM, Oracle und andere nachgezogen und ihre Absichten in diese Richtung dargelegt.

Im Gegensatz zu vielen anderen IT-Trends bedeuten Web-Services tatsächlich einen Paradigmenwechsel zu einem neuen Typ von vernetztem Computing. Ein wesentliches Merkmal ist die auf dem offenen Standard XML (Extensible Markup Language) basierende Kommunikation zwischen dem Client und einer Anwendung oder von Anwendungen untereinander - deshalb ist oftmals auch von XML-Web-Services die Rede. Eine zwar etwas verkürzte, aber für das grundlegende Verständnis durchaus brauchbare Definition für Web-Services gibt es von IBM. Demnach sind die neuen Services gekennzeichnet durch einen dreistufigen Web-Service-Stack mit Soap (Simple Object Access Protocol), WSDL (Web Services Description Language) und UDDI (Universal Discovery, Description and Integration).

Vor allem für Unternehmen zeichnen sich durch die neue Entwicklung große Vorteile ab. Die Integration von Anwendungen war bisher immer schwierig, weil verschiedene Programmiersprachen und Middleware unter einen Hut zu bringen waren. Der Komponentenkrieg führte zu einem regelrechten Wildwuchs an Adaptern, wobei die Interoperabilität selten völlig zufrieden stellend war. Im Gegensatz zu geläufigen Komponententechnologien werden Web-Services nicht über Objektmodell-spezifische Protokolle wie DCOM (Distributed Component Object Model), RMI (Remote Method Invocation) oder IIOP (Internet Inter Object Protocol) angesprochen. Stattdessen kommen allgegenwärtige Web-Protokolle und Datenformate wie HTTP und XML zum Einsatz, so dass jede Programmiersprache, jede Middleware und jede Plattform mit allen anderen kommunizieren kann.

Als Anwendungsplattform war das Web in seinen Anfangsjahren eigentlich gar nicht gedacht. Doch die Plattformunabhängigkeit von HTML-Seiten und das über alle Firewalls übertragbare HTTP erwiesen sich als Universallösung für die fragmentierte IT-Welt. Die Grenzen dieses attraktiven Grundkonzepts zeichneten sich jedoch schnell ab. Zum einen hat sich in den letzten Jahren eine Vielfalt an Endgerätetypen mit unterschiedlichsten Display-Formaten etabliert. Gerade im Mobilfunkbereich wächst die Zahl der Internet-fähigen Geräte stark an, vom WAP-Handy über die Smartphones bis zu den drahtlosen PDAs. Die reine Umsetzung PC-gerechter Web-Inhalte auf kleinere Bildschirmformate, wie sie derzeit oft praktiziert wird, kann nur als Zwischenschritt angesehen werden. Gefordert sind in Zukunft Anwendungen, die der Nutzer unabhängig vom Endgerät bedienen kann.

Als Lösung für diese Probleme sehen die Hersteller ein kontextsensitives Netz, das seine Daten an beliebige Geräte übermittelt, ohne Rücksicht auf Server und Formate nehmen zu müssen. Voraussetzung dafür ist zunächst die Einrichtung einer persönlichen Web-Umgebung, die den Benutzer unabhängig vom Gerät und dem Ort des Abrufs identifiziert und seine Rolle, seine Profile und Datenschutzvorgaben bereithält. Genau aus diesem Bedürfnis heraus hat Microsoft seinen umstrittenen Passport-Service aufgebaut, der zukünftig Dreh- und Angelpunkt bei der Benutzung von auf Microsoft-Software beruhenden Web-Services sein soll.

Microsoft, Sun, IBM und Co. wollen zukünftig Anwendungslogik in Komponenten verpacken. Sportergebnisse, Aktienkurse oder Kalenderfunktionen werden dann als solche Komponenten bereitgestellt. Hierbei ist es im Gegensatz zu heutigen Modellen gleichgültig, ob ein Programm eine dynamische Datenausgabe erzeugt, Informationen statisch ablegt oder seine Ausgabe aus verschiedenen anderen Diensten generiert. Programme werden als Funktionen über Applikations-Server über das Netz angeboten, etwa über das Sun ONE Webtop oder Microsofts Hailstorm-Dienste.

Microsoft .NETMicrosofts .NET-Plattform bedeutet zunächst einen grundlegenden Wandel von Windows mit Hilfe einer Java-ähnlichen Laufzeitumgebung CLR (Common Language Runtime) und einer einheitlichen Programmier-Schnittstelle CLI (Common Language Infrastructure - siehe CW 29/01, Seite 16). Die Basis für Web-Services wurde aber bereits mit dem Soap-Toolkit gelegt, das parallel zur Testversion der Entwicklungsumgebung Visual Studio .NET zur Verfügung stand. In Microsofts Plan vom programmierbaren Web agiert das Internet als Kommunikationsmedium zwischen Anwendungen, Entwicklungs-Tools und Web-Service-Anbietern. Browser und Geräte sind Clients, die Anwendungen "konsumieren". Anwendungen wiederum nutzen Web-Services und entdecken sie mit Hilfe des dateibasierenden Disco-(Discovery-Protocol)-Mechanismus.

Die Redmonder sehen ihre neue .NET-Web-Service-Architektur als Weiterentwicklung der n-Tier-DNA-Architektur. Parallelen sind beispielsweise beim Web-Service-Listener zu erkennen, der vergleichbar ist mit dem Präsentations-Layer einer DNA-Anwendung. Neu im Vergleich zu DNA ist unter anderem, dass der Listener Soap-Nachrichten verstehen und generieren können sowie WSDL und UDDI kennen muss. Somit stellt bereits Windows 2000 umfangreiche APIs für Web-Services bereit: COM ermöglicht die Implementierung von Business-Facade und -Logik sowie die Datenzugriffs-Ebenen ADO, OLE DB und ODBC den Zugriff auf Datenspeicher. MSXML hilft beim Erzeugen und Konsumieren von XML-Nachrichten am Service-Listener, und Active Server Pages (ASP) sowie ISAPI dienen der Implementierung von Web-Service-Listenern.

Unter dem Codenamen Hailstorm hat Microsoft im Frühjahr den Aufbau eigener, kostenpflichtiger Web-Services angekündigt. Anwender können von beliebigen Endgeräten, den Hailstorm-Endpoints, auf Internet-basierte Dienste wie Mycalendar (Terminkalender), Myadressbook (Adressbuch) oder Mydocuments (Datenspeicher) zugreifen.

IBMIBM bezeichnet seine neue Application-Server-Suite "Websphere 4" als erste produktionsfähige Web-Service-Software. Das Unternehmen hat zwar mit Websphere eine breite installierte Basis, doch peilt man mit seiner Strategie in erster Linie Microsoft-Entwickler an. Auf längere Sicht soll im Rahmen der Web-Service-Strategie die gesamte Palette von der Tivoli-Software über MQseries, DB2 und Websphere weitgehend integriert werden. Big Blue hat eine Testversion seines Web Services Toolkit (WSTK) in der aktuellen Version 2.3 veröffentlicht. Fertige Komponenten sollen später in die Entwicklungsumgebung Visual Age integriert werden. Allerdings hinkt man nach eigenen Angaben mit seiner Implementierung noch weit hinter Microsoft her (http://www7.software.ibm.com/vad.nsf/data/document4376). IBM beansprucht zwar für sich, eine weitaus standardkonformere Umgebung als .NET zu bieten, gibt aber zu, dass die Entwicklung unter .NET deutlich einfacher und schneller vonstatten geht.

OracleOracle hat sich im Gegensatz zu vielen Konkurrenten beim Thema Web-Services lange Zeit auffallend zurückgehalten. Soeben hat der Datenbankhersteller mit der Veröffentlichung einer Vorabversion seines "Jdeveloper" für 9i erstmals konkrete Web-Service-Pläne dargelegt. Neben J2EE werden die üblichen Web-Service-Standards unterstützt. Neu ist auch der Cross-Platform-Ansatz. Neben Windows NT/2000 sind nun auch Linux und Unix zertifiziert. Gegen Ende des Jahres soll das fertige Produkt ausgeliefert werden. Das Unternehmen will seinen umfassenden Integrationsansatz, der sich über alle Produktlinien von den Datenbanken bis zu den Enterprise-Applikationen hinzieht, auch auf Web-Services übertragen. Damit verfolgt Oracle einen ähnlich umfassenden Infrastruktur-Ansatz wie Microsoft.

Hewlett-PackardMit seinem E-Speak-Projekt war HP 1999 das erste Unternehmen, das mit der Idee der Web-Services von sich reden machte. Bisher gelang es dem Unternehmen allerdings nicht, seine ehrgeizigen Pläne in greifbare Produkte umzusetzen. Nach der Übernahme von Bluestone erweiterte HP seine Strategie um J2EE-Unterstützung und XML-Techniken und gab seinem Web-Services-Projekt im Januar den Namen "Netaction". Seine besondere Rolle sieht HP darin, die Brücke zwischen der Java- und der Nicht-Java-Welt zu schlagen. Nach wie vor kämpft das Unternehmen allerdings mit einem Image-Problem: Trotz wachsender Umsätze im Softwarebereich wird HP in erster Linie als Hardwarehersteller wahrgenommen.

FazitObwohl mittlerweile alle namhaften Softwarehersteller eine Web-Services-Strategie verkündet haben, sind bisher noch wenige fertige Produkte zu sehen, oftmals handelt es sich auch um reine Marketing-Blasen.

So recht mag derzeit aber auch noch niemand an die schöne neue Softwarewelt glauben, in der sich Anwendungen und Komponenten unterschiedlichster Hersteller verstehen und friedlich nebeneinander koexistieren. Da unwahrscheinlich ist, dass die großen Softwarehersteller sich zu karitativen Vereinigungen wandeln, stellt sich die Frage nach den Geschäftsmodellen im Web-Service-Zeitalter. Erahnen lässt sich ein solches beim Desktop-Monopolisten Microsoft, da dessen Web-Services-Bemühungen bereits weit gediehen sind. Zwar ist Hailstorm tolerant gegenüber seinen Endpoints (Clients) - selbst Linux ist erlaubt -, doch die Nutzung dieser Dienste setzt in jedem Fall eine von Microsoft gehostete Identität bei Passport voraus. Microsoft besitzt auch das Urheberrecht auf Schemas und setzt eine proprietäre Version von Kerberos, einem Sicherheitsstandard zur Anwender-Authentifizierung, ein. Somit bewegt sich der Anwender also doch wieder im Rahmen einer - nun ausgeweiteten - Microsoft-Welt, wobei das Unternehmen dann Umsätze aus Transaktionen generieren wird. Es bleibt abzuwarten, mit welchen Mitteln die anderen großen Hersteller auf die offenen Web-Service-Standards reagieren werden, um ihre Anwender bei der Stange zu halten.

Wie werden Web-Services aufgebaut?-Ein Anbieter erstellt, kombiniert und verteilt einen Web-Service mit Hilfe seiner bevorzugten Programmiersprache, Middleware und Plattform.

-Der Anbieter definiert den Web-Service in WSDL (Web Service Description Language). Ein WSDL-Dokument beschreibt einen Web-Service gegenüber anderen Diensten.

-Der Anbieter registriert den Service in UDDI-Registries (UDDI: Universal Description, Discovery and Integration). UDDI ermöglicht Entwicklern die Veröffentlichung von Web-Services. Damit ist ihre Software in der Lage, andere Services aufzufinden.

-Ein zukünftiger Anwender findet den Service, indem er in der UDDI-Registry sucht.

-Die Anwendung des Anwenders verbindet sich mit dem Web-Service und ruft die Funktionen des Dienstes unter Verwendung von Soap (Simple Object Acsess Protocol) auf. Das Web-Service-Standard-Protokoll Soap bietet ein XML-Format für die Repräsentation von Parametern und die Rückgabe von Werten über HTTP.

Abb: Web-Services auf J2EE-Basis

Eine J2EE-Anwendung wird in einem Container gehostet, der Quality of Services für Unternehmensanwendungen bereitstellt. Quelle: The Middleware Company