Web-Service-Anwendungen mit JAX-WS implementieren
Wenn Sie von vorhandenen JavaBeans oder Enterprise-Beans ausgehen, können Sie einen Bottom-up-Ansatz verwenden, um Web-Services zu entwickeln, die auf dem Programmiermodell Java™ API for XML-Based Web Services (JAX-WS) basieren.
Vorbereitende Schritte
Bestimmen Sie die vorhandenen JavaBeans oder Enterprise-Beans, die Sie als JAX-WS-Web-Service bereitstellen möchten.
Informationen zu diesem Vorgang
Wenn Sie Web-Services auf der Basis des Programmiermodells JAX-WS entwickeln möchten, können Sie einen Bottom-up-Entwicklungsansatz, ausgehend von vorhandenen JavaBeans oder Enterprise-Beans, verwenden, oder Sie können sich für einen Top-down-Entwicklungsansatz, ausgehend von einer vorhandenen WSDL-Datei (Web Services Description Language), entscheiden. In dieser Task werden die Schritte für den Bottom-up-Entwicklungsansatz beschrieben.
Wenn Sie JAX-WS-Web-Services aus vorhandenen JavaBeans oder Enterprise-Beans entwickeln, können Sie die Bean als JAX-WS-Web-Service bereitstellen, indem Sie Annotationen verwenden. Wenn Sie der Bean die Annotation "@WebService" oder "@WebServiceProvider" hinzufügen, definieren Sie die Bean damit als JAX-WS-Web-Service. JAX-WS-Web-Services können optional eine Serviceendpunktschnittstelle verwenden. Zusätzlich zur Annotation der Bean und der Abgabe einer optionalen Serviceendpunktschnittstelle müssen Sie alle Artefakte, die der Web-Service erfordert, assemblieren und die daraus resultierende Anwendung in der Anwendungsserverumgebung implementieren, um die Aktivierung der Bean als Web-Service abzuschließen. Obwohl die Verwendung einer WSDL-Datei die empfohlene Methode ist, müssen Sie keine WSDL-Datei mit Ihren JAX-WS-Web-Services packen.
- Hinweise für die Verwendung von JavaBeans
- Als JAX-WS-Web-Services bereitgestellte JavaBeans werden nur über einen HTTP-Transport unterstützt.
- JavaBeans kann Contexts and Dependency Injection (CDI, Kontext- und Abhängigkeitsinjektion) verwenden. Beachten Sie, dass die Konstruktorinjektion nicht unterstützt wird.
- Hinweise für die Verwendung von Enterprise-Beans
- Die Enterprise-Bean muss eine Stateless- oder Singleton-Session-Bean sein.
- Als JAX-WS-Web-Services bereitgestellte Enterprise-Beans müssen in Modulen der EJB Version 3.0 oder höher gepackt werden.
- JAX-WS-Anwendungen, die Enterprise-Beans enthalten, müssen mit dem Befehl endptEnabler implementiert werden.
- JAX-WS-Web-Services, die Enterprise-Beans verwenden, werden über einen HTTP- oder JMS-Transport (Java Message Service) unterstützt.
- Enterprise-Beans können CDI nutzen. Beachten Sie, dass die Konstruktorinjektion nicht unterstützt wird.
- Optional können Sie WSDL-Dokumente (Web Services Description Language) in das JAX-WS-Anwendungspaket aufnehmen.
Ab WebSphere Application Server Version 7.0 werden Java EE 5-Anwendungsmodule (Webanwendungsmodule der Version 2.5 oder höher oder EJB-Module der Version 3.0 oder höher) nach Annotationen durchsucht, um JAX-WS-Services und -Clients zu identifizieren. Anwendungsmodule vor Java EE 5 (Webanwendungsmodule der Version 2.4 oder früher oder EJB-Module der Version 2.1 oder früher) werden aus Leistungsgründen standardmäßig nicht nach JAX-WS-Annotationen durchsucht. In Feature Pack for Web Services Version 6.1 werden die Webanwendungsmodule einer Version vor Java EE 5 standardmäßig gescannt, um die JAX-WS-Services zu identifizieren und die Webanwendungsmodule und EJB-Module einer Version vor Java EE 5 während der Anwendungsinstallation nach Service-Clients zu scannen. Da Module vor Java EE 5 ab WebSphere Application Server Version 7.0 während der Anwendungsinstallation bzw. des Serverstarts standardmäßig nicht nach Annotationen durchsucht werden, müssen Sie zur Gewährleistung der Abwärtskompatibilität mit dem Feature-Pack früherer Releases entweder die Eigenschaft "UseWSFEP61ScanPolicy" in der Manifest-Datei "META-INF/MANIFEST.MF" einer WAR-Datei (Webarchiv) oder eines EJB-Moduls konfigurieren oder die angepasste JVM-Eigenschaft (Java Virtual Machine) "com.ibm.websphere.webservices.UseWSFEP61ScanPolicy" auf den Servern definieren, damit die Module während der Anwendungsinstallation bzw. des Serverstarts durchsucht werden. Wenn Sie mehr über das Durchsuchen von Modulen nach Annotationen erfahren möchten, lesen Sie die Informationen zu JAX-WS-Annotationen.
Vorgehensweise
Ergebnisse
Sie haben eine JAX-WS-Anwendung entwickelt.