JAX-WS
aus Wikipedia, der freien Enzyklopädie
JAX-WS (Java API for XML - Web Services) wurde in der Java Platform Enterprise Edition 5 eingeführt und ist eine Java API zum Erstellen von Webservices. JAX-WS baut auf JAX-RPC auf und ist Teil der sogenannten Metro Plattform. Wie andere Java EE APIs benutzt auch JAX-WS Annotationen, um die Entwicklung und das Deployment von Webservice Clients und Service Endpunkten zu vereinfachen.
Inhaltsverzeichnis |
[Bearbeiten] Erstellen von Webservice Endpunkten und Clients
Zum Erstellen eines Webservice Endpunktes wird eine Schnittstelle definiert und eine Klasse geschrieben, welche die Schnittstelle implementiert. Auf der Clientseite wird der gewünschte Webservice über eine URI adressiert und ein lokales Proxy-Objekt erzeugt, welches ebenfalls die Schnittstelle des Webservices implementiert. Der Client führt seine Methodenaufrufe an dem Proxy-Objekt aus, als wäre der Webservice lokal verfügbar. Die JAX-WS Laufzeitumgebung schickt die Aufrufe von dem Proxy-Objekt an den Webservice weiter, welcher dann die Operationen durchführt und das Ergebnis an den Client zurückschickt.
[Bearbeiten] Funktionsweise von JAX-WS
Client und Endpunkt kommunizieren über XML-Nachrichten. Hier hat sich SOAP als Standard durchgesetzt. Als zugrundeliegendes Protokoll wird wegen seiner großen Verfügbarkeit fast immer HTTP verwendet. Sendet ein Client eine Anfrage an einen Webservice, so müssen die Daten aus dem XML-Dokument ausgelesen werden.
Um die Daten richtig verarbeiten zu können, müssen die XML-Datentypen in Java-konforme Datentypen umgewandelt werden. Das wird von JAX-WS an JAXB (Java Architecture for XML Binding) delegiert. Das Data Binding beinhaltet trotz aller Vereinfachungen eine gewisse Problematik. Nicht alle Java Klassen können als Methodenparameter oder Rückgabewert in JAX-WS verwendet werden.
[Bearbeiten] Unterstützte WS-* Standards
- WS-Addressing
- WS-Eventing
- WS-Interoperability
- WS-Metadata Exchange
- WS-Notification
- WS-Policy
- WS-Reliable Messaging
- WS-Secure Conversation
- WS-Security Policy
- WS-Security
- WS-Transaction
- WS-Transfer
- WS-Trust

