Der Assistent für Web-Service-Clients unterstützt Sie beim Generieren eines Java™-Bean-Proxys und einer Beispielanwendung.
Die Beispielwebanwendung veranschaulicht, wie eine Proxy-Datei codiert wird.
Vorbereitende Schritte
Voraussetzungen:
- Wenn Sie WebSphere Application Server verwenden,
wird dringend empfohlen, den Server vor der Ausführung des Web-Service-Assistenten zu starten, weil der Start von
WebSphere Application Server ja nach Geschwindigkeit Ihres Computers
mehrere Minuten dauern kann.
Zum Starten des Servers wählen Sie ihn in der Ansicht "Server"
(Fenster > Sicht anzeigen > Server) aus, klicken Sie mit der rechten Maustaste und wählen Sie
dann Starten aus.
- Erkennen oder importieren Sie ein WSDL-Dokument in den Arbeitsbereich. Sie können nur WSDL-Dateien verwenden, die ein Element "service" enthalten. Sie können
eine statische WSDL-Datei aus Ihrem Arbeitsbereich, eine WSDL-Datei unter einer URL oder, sofern Sie eine annotierte Bean, die als JAX-WS-Web-Service dient, in Ihrem Arbeitsbereich haben, die
dynamisch von der Laufzeitumgebung von WebSphere Application Server Feature Pack for Web Services erzeugte WSDL-Datei verwenden.
Sie finden diese WSDL-Datei unter der folgenden URL: http://localhost:Port/Name_des_Serviceprojekts/ServicenameService?wsdl. In dem
JAX-WS-Web-Service für Adressbücher, der im Lernprogramm und in den Beispielen von Feature Pack for Web Services erstellt wird, befindet sich die dynamisch erzeugte WSDL-Datei beispielsweise unter der folgenden URL:
http://localhost:9082/jwsAddressBook/AddressBookService?wsdl.
Einschränkung: Wenn Sie einen einfachen
Java-Web-Service-Clients außerhalb eines J2EE-Containers (Java Platform, Enterprise Edition) ausführen möchten,
müssen Sie den Web-Service-Client in einem einfachen Java-Projekt
generieren. Der Web-Service-Assistent kann kein einfaches Java-Projekt erstellen.
Die einem einfachen Java-Projekt ähnlichste Form ist ein Dienstprogrammprojekt, aber die Ausführung
eines einfachen Java-Web-Service-Clients (ohne Container) über ein Dienstprogrammprojekt wird nicht unterstützt.
Sie müssen ein einfaches Java-Projekt erstellen, bevor Sie den Assistenten für Web-Service-Clients ausführen.
Informationen zu diesem Vorgang
Gehen Sie zum Generieren eines Java-Client-Proxys und einer Anwendung aus einem erkannten WSDL-Dokument wie folgt vor:
Vorgehensweise
- Wechseln Sie in die Java EE-Perspektive (Fenster > Perspektive öffnen > Java EE).
- Klicken Sie auf Datei > Neu > Andere. Wählen Sie Web-Services aus, um die verschiedenen Web-Service-Assistenten
anzuzeigen. Wählen Sie den Assistenten Web-Service-Client aus. Klicken Sie auf Weiter.
- Wählen Sie auf der Seite "Web-Services" die WSDL-Datei aus, die Sie zum Generieren des Clients verwenden.
Optional können Sie die folgenden Aktionen ausführen:
- Wählen Sie mit dem Schiebefeld die Phasen der Web-Service-Client-Entwicklung aus, die Sie ausführen möchten.
Daraufhin werden in den verbleibenden Assistentenanzeigen verschiedene Standardwerte gesetzt.
- Entwickeln: Entwickelt die WSDL-Definition und Implementierung des Web-Service-Clients. Dazu gehören Tasks wie das Erstellen der Module, die den generierten Code enthalten, und der ggf. erforderlichen
Java-Dateien.
- Assemblieren: Stellt sicher, dass das Projekt mit dem Web-Service-Client einer EAR-Datei zugeordnet wird, sofern der Zielanwendungsserver dies erfordert.
- Implementieren: Erstellt den Implementierungscode für den Client.
- Installieren: Installiert und konfiguriert das Webmodul und die EAR-Dateien auf dem Zielserver. Falls Änderungen an den Endpunkten der WSDL-Datei erforderlich sind, werden diese in dieser Phase vorgenommen.
- Starten: Startet den Server, sobald der Client installiert ist.
- Testen: Stellt verschiedene Optionen für das Testen des Service bereit, z. B. die Verwendung des Web-Service-Explorers oder der Beispiel-JSPs.
- Server auswählen: Der Standardserver wird angezeigt. Wenn Sie Ihren Service auf einem anderen Server implementieren möchten, klicken Sie auf den Link, um einen anderen Server anzugeben.
Diese Task unterstützt die folgenden Serverlaufzeitumgebungen:
- WebSphere Application Server ab Version 7.0
- WebSphere Application
Server Liberty Profile Version 8.5.5
- Laufzeitumgebung auswählen: Die Standardlaufzeit wird angezeigt. Wenn Sie Ihren Service in einer anderen Laufzeitumgebung implementieren möchten, klicken Sie auf den Link, um eine andere Laufzeitumgebung anzugeben.
- Clientprojekt auswählen: Das in Ihrem Arbeitsbereich ausgewählte Projekt wird angezeigt. Wenn Sie ein anderes Projekt und eine andere EAR-Datei auswählen möchten, klicken Sie auf den Projektlink. Sie können ein Webprojekt, ein EJB-Projekt, ein Java-Projekt oder ein Java-EE-Anwendungsclientprojekt als Position für den
Client-Code auswählen. Stellen Sie sicher, dass das als Client-Webprojekt ausgewählte Projekt ein anderes ist, als das Service-Webprojekt, da der Service sonst durch die generierten Artefakte des Clients überschrieben wird.
Bei JAX-WS-Web-Services können die Server- und Clientprojekte dieselbe EAR-Datei nutzen.
- Web-Service überwachen: Sendet den Web-Service-Datenverkehr über den TCP/IP-Monitor, was Ihnen ermöglicht, den SOAP-Datenverkehr, der vom Web-Service generiert wird, zu beobachten
und diesen Datenverkehr auf WS-I-Kompatibilität hin zu prüfen.
Alternativ können Sie einen TCP/IP-Monitor gemäß der Beschreibung unter im Abschnitt
Using the TCP/IP Monitor to test web services
manuelle einrichten.
- Seite "Konfiguration eines WebSphereJAX-WS-Web-Service-Clients":
- Ausgabeordner: Wählen Sie den Ordner aus, in dem die Java-Klassen des Clients generiert werden sollen, oder akzeptieren Sie den Standardwert.
- Zielpaket: Der Assistent für Web-Service-Clients generiert mehrere Java-Dateien aus der angegebenen WSDL-Datei. Er erstellt standardmäßig ein Paket
mit einem Namen, der auf dem in der WSDL-Datei angegebenen Namespace basiert. Sie können auch einen eigenen Paketnamen
für den Namespace in der WSDL-Datei angeben, um dieses Standardverhalten außer Kraft zu setzen.
- Portierbaren Client generieren: Wenn Sie dieses Kontrollkästchen auswählen, können Sie den Web-Service-Client-Code von einer Maschine
auf eine andere oder von einer Instanz von WebSphere Application
Server in eine andere verschieben. Bei Auswahl dieser Option werden das WSDL-Dokument und alle XML-Schema- und sonstigen WSDL-Dokumente, von denen das WSDL-Dokument abhängig ist,
in das Clientprojekt unter "WEB-INF/wsdl" kopiert. Anschließend wird ein Element file:relativeURL, das auf diese Kopie verweist, in den statischen Initialisierungsblock der JAX-WS-Serviceklasse
injiziert.
- Asynchronen Aufruf für generierten Client aktivieren: Wenn Sie die Option zum Aktivieren eines asynchronen Clients auswählen, werden für jede Methode im Web-Service zwei weitere Methoden erstellt. Dabei handelt es sich Polling- und Callback-Methoden,
die die asynchrone Ausführung des Clients ermöglichen.
- JAX-WS- oder JAXB-Bindungsdateien angeben: Wenn Sie angepasste JAX-WS- oder JAXB-Bindungsdateien erstellt haben, wählen Sie dieses Kontrollkästchen aus, um diese Dateien
für die Erstellung des Web-Service zu verwenden.
- Client-Proxy-Klassennamen anpassen: Sie können den Standard-Proxy-Namen anpassen oder einen eigenen Namen eingeben.
- Web-Service-Implementierungsdeskriptor generieren: Für JAX-WS-Web-Services werden Implementierungsinformationen von der Laufzeitumgebung dynamisch generiert.
Statische Implementierungsdeskriptoren sind nicht mehr erforderlich. Wenn Sie dieses Kontrollkästchen auswählen, werden die Implementierungsdeskriptoren generiert.
- Anbietererweitungen zulassen: Wenn Sie dieses Kontrollkästchen auswählen, wird die Option
-extension zum Befehl wsgen oder wsimport hinzugefügt.
Die Option -extension gibt an, ob angepasste Erweiterungen für Funktionen, die nicht in der
JAX-WS-Spezifikation angegeben sind, aktiviert oder akzeptiert werden sollen.
Die Verwendung von Erweiterungen kann dazu führen, dass die Anwendungen
nicht portierbar sind oder nicht mit anderen Implementierungen interagieren können. Einzelheiten
finden Sie in den Abschnitten
Befehl wsgen für JAX-WS-Anwendungen und
Befehl wsimport für
JAX-WS-Anwendungen im Information Center von WebSphere Application Server.
- Seite "Angepasste Bindungsdeklarationen": Wenn Sie auf der vorherigen Seite eine JAX-WS- oder JAXB-Bindungsdatei angegeben haben, können Sie hier zur Position der angegebenen Bindungsdatei navigieren.
- Seite "Konfiguration der Proxy-Generierung": Wenn Sie sich für die Anpassung des Klassennamens des Client-Proxys entschieden haben, können Sie auf dieser Seite für jeden Port einen Proxy-Klassennamen angeben.
- Seite "Test des Web-Service-Clients":
- Generierten Proxy testen: Wenn Sie diese Option auswählen, wird der Beispielclient in einem Web-Browser gestartet, was Ihnen das Testen der Funktion ermöglicht.
- Testfunktion auswählen. Sie können den generierten Proxy im
generischen Service-Client oder im Web Services Explorer testen oder die
Beispiel-JSPs von JAX-WS 2.0 generieren und verwenden.
- Ordner: Wenn Sie sich für das Testen des Proxys über eine JSP entschieden haben, können Sie den Ordner auswählen, in dem sich die JSP befindet, und Sie können die Methoden auswählen, die in der JSP enthalten sind.
- Methoden: Wählen Sie bereitzustellenden Methoden aus. Wenn Sie sich für die Aktivierung des asynchronen Aufrufs entschieden haben, müssen die asynchronen Methoden ebenfalls aufgelistet werden.
- Test auf Server ausführen: Startet den Server automatisch.
- Klicken Sie auf Fertigstellen. Wenn Sie sich für das Testen des Proxys entschieden haben, wird der Testclient in einem Browserfenster geöffnet.
Ergebnisse
Der generierte Java-Bean-Proxy stellt eine RPC-Schnittstelle zum Web-Service bereit. Die Beispielwebanwendung veranschaulicht, wie die Proxy-Datei codiert wird.
Nachdem Sie Ihren Java-Client-Proxy generiert haben,
können Sie die Methoden des Web-Service über den Proxy mit den Web-Service-Beispiel-JSPs oder
dem Web Services Explorer testen.
- Wenn Sie sich für das Testen des Web-Service mit dem Web-Service-Explorer entschieden haben, wird der Explorer geöffnet. Wählen Sie die Operation aus, die Sie testen möchten, geben Sie die erforderlichen Informationen an
und klicken Sie dann auf Los. Das Ergebnis wird im Teilfenster "Status" angezeigt.
- Wenn Sie sich für das Testen eines Java Thin Client entschieden haben, wird die Systemausgabe zur Ausführung des Java Thin Client in der Ansicht "Konsole" angezeigt. Sie können den
Java Thin Client ausführen, indem Sie im Dialogfenster Konfigurationen ausführen
auf Ausführen klicken.
Als einfache Java-Anwendung verwendet der Client eine entsprechende JAR-Datei für den
WebSphere Application Server-Thin-Client-Laufzeitcontainer.