Java API for XML Web Services

Java API for XML Web Services

Die Java API for XML Web Services (JAX-WS) ist eine Java-API zum Erstellen von Webservices. JAX-WS wurde in der Java Platform Enterprise Edition 5 eingeführt und ist seit der Version 1.6 auch Teil der Java Platform, Standard Edition.[1] 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

Funktionsweise von JAX-WS

Client und Endpunkt kommunizieren über SOAP-Nachrichten. JAX-WS benutzt SAAJ, um SOAP-Nachrichten zu erzeugen. JAX-WS ist protokoll- und transportunabhängig. Standardmäßig wird allerdings SOAP 1.1 und HTTP verwendet.

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. So kann die XML-Verarbeitung im Wesentlichen dem Programmierer verborgen bleiben.

Erstellen von Webservice-Endpunkten und -Clients

Serverseite

Es gibt zwei verschiedene Wege, Service-Endpunkte aufzubauen: Code First (Bottom Up) über POJOs und Contract First (Top Down) über WSDL.

Start mit POJOs (Bottom Up)

Im Gegensatz zur vorhergehenden Entwicklungsweise (JAX-RPC), bei der zum Erstellen eines Webservice-Endpunktes eine Schnittstelle definiert und eine Klasse geschrieben wird, welche die Schnittstelle implementiert, können bei JAX-WS einfach nur POJOs, die bereits in einer Anwendung vorliegen, verwendet werden. Um dies zu ermöglichen, werden diese durch Java-Annotations zu einem Webservice erweitert. Auch die Deployment-Deskriptoren werden durch die Annotations überflüssig.

Start mit WSDL (Top Down)

Klassen werden aus der WSDL-Beschreibung des Serviceinterfaces generiert und vom Nutzer ergänzt.

Clientseite

Auf der Clientseite muss ein lokales Proxy-Objekt erzeugt werden, welches ebenfalls die Schnittstelle des Webservices implementiert (generiert aus WSDL). Bei JAX-WS holt sich der Client sein Proxy nicht aus einer Factory. Er konstruiert ein ServiceObjekt mit dem new-Operator, ruft die getServicePort-Methode auf, um ein Proxy zu bekommen, und führt seine Methodenaufrufe auf 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.

Unterstützte WS-* Standards

Die folgenden WS-*-Standards sind in der Referenzimplementierung von JAX-WS umgesetzt:[2][3]

Zurzeit wird nur WSDL 1.1 unterstützt, nicht WSDL 2.0.

Weblinks

Einzelnachweise

  1. Introducing JAX-WS 2.0 With the Java SE 6 Platform, Part 1
  2. http://wiki.apache.org/ws/StackComparison
  3. https://metro.dev.java.net/guide/Metro_Specifications.html

Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Java API for XML Web Services — The Java API for XML Web Services (JAX WS) is a Java programming language API for creating web services. It is part of the Java EE platform from Sun Microsystems. Like the other Java EE APIs, JAX WS uses annotations, introduced in Java SE 5, to… …   Wikipedia

  • Java API for RESTful Web Services — Bei der Java API for RESTful Web Services, kurz JAX RS, handelt es sich um die Spezifikation einer Programmierschnittstelle (API) der Programmiersprache Java, die die Verwendung des Software Architekturstils Representational State Transfer (REST) …   Deutsch Wikipedia

  • Java API for XML-based RPC — (JAX RPC) ist eine Java Bibliothek, um Remote Procedure Calls auf XML Basis ausführen zu können. Die Funktionalität der API wird von einem Unternehmenskonsortium (rund um Sun) und unabhängigen Personen im so genannten Java Community Process… …   Deutsch Wikipedia

  • Java API for XML-based RPC — (JAX RPC) allows invoking from a Java application a Java based Web Service with a known description while still being consistent with its WSDL description. It can be seen as Java RMIs over Web Services. JAX RPC 2.0 was renamed to JAX WS 2.0 (Java …   Wikipedia

  • Java Architecture for XML Binding — (JAXB) Maintainer Metro Projekt Entwickler Sun Microsystems Aktuelle Version 2.2.4 update 1 (8. Juni 2011) Betriebssystem Plattformunabhängig …   Deutsch Wikipedia

  • Web Services Interoperability Technology — (WSIT) ist eine freie Zusammenstellung von Java Technologien, mit dessen Hilfe Web Services entwickelt und veröffentlicht werden können. Sie ermöglicht Interoperabilität zwischen Java Web Services und Microsofts Windows Communication Foundation.… …   Deutsch Wikipedia

  • Web Services Invocation Framework — Infobox Software name = Apache WSIF logo = caption = developer = Apache Software Foundation latest release version = 2.0 latest release date = January 27, 2003 operating system = Cross platform genre = Web Services license = Apache License 2.0… …   Wikipedia

  • Java Web Services Development Pack — Java Web Services Developer Pack Desarrollador Sun Microsystems http://java.sun.com/... Información general Última versión establ …   Wikipedia Español

  • Java Web Services Development Pack — The Java Web Services Development Pack (JWSDP) is a free software development kit (SDK) for developing Web Services, Web applications and Java applications with the newest technologies for Java.JWSDP has been… …   Wikipedia

  • Java 2 Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”