Nicht verwaltete JAX-WS-Web-Service-Clients ausführen

WebSphere Application Server stellt eine Thin-Web-Service-Clientlaufzeitumgebung der Java™ Platform, Standard Edition 6 (Java SE 6) bereit, die auf der Spezifikation Java API for XML-based Web Services (JAX-WS) 2.2 basiert. Thin Client for JAX-WS mit WebSphere Application Server ist eine eigenständige Clientumgebung der Java SE Version 6, die aktiven, nicht verwalteten JAX-WS-Web-Service-Clientanwendungen in einer anderen Umgebung als der WebSphere-Umgebung ermöglicht, Web-Services aufzurufen, die im Anwendungsserver ausgeführt werden.

Vorbereitende Schritte

Unterstützte Konfigurationen Unterstützte Konfigurationen: Sie können Thin Client for JAX-WS mit WebSphere Application Server als eigenständigen Client in einer reinen Java SE-Umgebung oder in einer OSGi-Umgebung verwenden. Thin Client for JAX-WS wird für die Ausführung in Umgebungen mit WebSphere Application Server oder mit WebSphere Application Client nicht unterstützt. In dieser Version des Anwendungsservers können mit Ausnahme des Thin Client für Verwaltung andere mit dem Anwendungsserver bereitgestellte Thin-Client-Laufzeiten auch im CLASSPATH enthalten sein und mit dem Thin Client for JAX-WS koexistieren.sptcfg

Für die Konfiguration einer Ausführungsumgebung für nicht verwaltete JAX-WS-Clients benötigen Sie die JAR-Datei von Thin Client for JAX-WS. Sie erhalten Thin Client for JAX-WS, wenn Sie WebSphere Application Server Version 9.0 oder Application Client for WebSphere Application Server Version 9.0 installieren. Die JAR-Datei von Thin Client for JAX-WS, com.ibm.jaxws.thinclient_8.5.0.jar, befindet sich im Verzeichnis Stammverzeichnis_des_Anwendungsservers\runtimes.

Kopieren Sie die Datei com.ibm.jaxws.thinclient_8.5.0.jar von Thin Client for JAX-WS und die Dateien endorsed_apis_8.5.0.jar auf andere Maschinen, um eine schlanke Clientumgebung zu erstellen, die die Kommunikation mit dem Produkt ermöglicht. Kopien von Thin Client for JAX-WS unterliegen den Lizenzbedingungen des WebSphere-Produkts, über das Sie Thin Client for JAX-WS erhalten haben. Informationen zur ordnungsgemäßen Verwendung und zu weiteren Einschränkungen entnehmen Sie den Lizenzvereinbarungen.

Thin Client for JAX-WS wird in den folgenden Umgebungen unterstützt:
  • IBM® Software Development Kits (SDKs) Version 6.0
  • SDKs der Version 6.0 von anderen Anbietern als IBM. Dabei gilt folgende Einschränkung:
    • Xerces-Einschränkung für SDKs anderer Anbieter

      Sie müssen Xerces-J Version 2.6.2 herunterladen und die Datei beim Konfigurieren der Umgebung von Thin Client for JAX-WS zum Klassenpfad hinzufügen.

    • WS-SecurityKerberos auf SDKs anderer Anbieter

      WS-SecurityKerberos wird von Sun JDK und SKDs anderer Anbieter nicht unterstützt. Anwendungen, die in einer Umgebung des Thin Client for JAX-WS ausgeführt werden und den WS-Security-Zugriffschutz auf Nachrichtenebene sowie Kerberos-Sicherheitstoken gemäß der Spezifikation "Web Services Security Kerberos Token Profile 1.1" verwenden, können in JDKs von anderen Anbietern als IBM nicht ordnungsgemäß arbeiten. Diese Einschränkung besteht aufgrund einer Abhängigkeit vom IBM-JGSS-Provider, der nur in den IBM SDKs verfügbar ist.

  • OSGi-Laufzeitumgebungen der Equinox Version 3.6

Informationen zu diesem Vorgang

Konfigurieren Sie die Umgebung von Thin Client for JAX-WS wie folgt:

Vorgehensweise

  1. Kopieren Sie die JAR-Datei com.ibm.jaxws.thinclient_8.5.0.jar von Thin Client for JAX-WS auf andere Maschinen, um eine schlanke Clientumgebung zu erstellen.
  2. Verwenden Sie Java Endorsed Standards Override Mechanism, um APIs zu überschreiben, die im JDK auf Ihrem System verfügbar sind.

    Da Thin Client for JAX-WS mit WebSphere Application ServerVersion 9.0 APIs, die aktueller sind als die, die in den JDKs verfügbar sind, für die Unterstützung der Implementierungen von JAX-WS 2.2 und JAXB 2.2 erfordert, müssen Sie die Standard-JDK-APIs, die vom System verwendet werden, mit Java Endorsed Standards Override Mechanism überschreiben.

    Kopieren Sie die Datei Stammverzeichnis_des_Anwendungsservers\runtimes\endorsed\endorsed_apis_8.5.0.jar in das Standardverzeichnis JAVA_JRE\lib\endorsed. Alternativ können Sie die Eigenschaft java.endorsed.dirs verwenden, um ein Verzeichnis Ihrer Wahl anzugeben. Wenn Sie sich für ein alternatives Verzeichnis entscheiden, empfiehlt es sich, nur die JAR-Datei endorsed_apis hinzuzufügen.

  3. Konfigurieren Sie den Pfad. Geben Sie den folgenden Befehl ein, um Ihrem Pfad die Java-Verzeichnisse bin hinzuzufügen:
    [Windows][z/OS]
    set PATH=<bin-Verzeichnis_Ihres_JDK>;%PATH%
    [AIX][HP-UX][Solaris][Linux]
    export PATH=<bin-Verzeichnis_Ihres_JDK>:$PATH
  4. Konfigurieren Sie den Klassenpfad.
    • Fügen Sie der Klassenpfaddefinition die JAR-Datei von Thin Client for JAX-WS hinzu.
      Wichtig: Wenn Java Message Service (JMS) vom Thin Client verwendet werden soll, müssen alle erforderlichen JAR-Dateien im Klassenpfad für JMS und für den Client angegeben sein, damit für alle erforderlichen Dateien Einträge existieren. Andernfalls werden die erforderlichen Dateien nicht als installierte und einsatzbereite Dateien erkannt.
      [Windows][z/OS]
      set CLASSPATH=.;<JAX-WS-Thin-Client-Installationsverzeichnis>\com.ibm.jaxws.thinclient_8.5.0.jar;
      <JAR-Dateien_der_Anwendung>;%CLASSPATH%
      [AIX][HP-UX][Solaris][Linux][IBM i]
      export CLASSPATH=.:<JAX-WS-Thin-Client-Installationsverzeichnis>/com.ibm.jaxws.thinclient_8.5.0.jar:
      <JAR-Dateien_der_Anwendung>;$CLASSPATH
    • Wenn Sie ein SDK eines anderen Anbieters verwenden, müssen Sie die Xerces-Dateien xml-apis.jar und xercesImpl.jar von der Xerces-Website herunterladen und die Klassenpfaddefinition konfigurieren.
      [Windows][z/OS]
      set CLASSPATH=.;<Xerces-Installationsverzeichnis>\xml-apis.jar;<Xerces-Installationsverzeichnis>
      \xercesImpl.jar;%CLASSPATH%
      [AIX][HP-UX][Solaris][Linux][IBM i]
      export CLASSPATH=.:<Xerces-Installationsverzeichnis>/xml-apis.jar:<Xerces-Installationsverzeichnis>
      \xercesImpl.jar:$CLASSPATH
  5. Optional: Implementieren Sie Richtliniensätze für Ihren Client.
  6. Konfigurieren Sie SSL für den Client.
    1. Fügen Sie dem Java-Befehl die folgenden Systemeigenschaften hinzu:
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props

      Sie können die Datei ssl.client.props aus der Installation von WebSphere Application Server verwenden und an Ihre Umgebung anpassen. Sie müssen zumindest die Positionen der Schlüsseldateien com.ibm.ssl.keyStore und com.ibm.ssl.trustStore in der Datei ssl.client.props in die entsprechenden Positionen in Ihrer Zielumgebung ändern.

      Verwenden Sie beispielsweise die folgenden SSL-Konfigurationseinstellungen, wenn Sie die Anwendung mit einer Sun-JRE ausführen:
      com.ibm.ssl.protocol=SSL
      com.ibm.ssl.trustManager=SunX509
      com.ibm.ssl.keyManager=SunX509
      com.ibm.ssl.contextProvider=SunJSSE
      
      com.ibm.ssl.keyStoreType=JKS
      com.ibm.ssl.keyStoreProvider=SUN
      com.ibm.ssl.keyStore=/home/user1/etc/key.jks
      
      com.ibm.ssl.trustStoreType=JKS
      com.ibm.ssl.trustStoreProvider=SUN
      com.ibm.ssl.trustStore=/home/user1/etc/trust.jks

      Die Keystore-Datei und die Truststore-Datei müssen mit dem Java-Dienstprogramm "keytool" erstellt werden, bevor die Anwendung ausgeführt wird. Die automatische Generierung der Schlüsseldateien wird mit JREs anderer Anbietet nicht unterstützt.

  7. Führen Sie Ihre Clientanwendung aus:
    • Geben Sie den folgenden Befehl ein, wenn Sie die Datei endorsed_apis_8.5.0.jar in das Standardverzeichnis JAVA_JRE\lib\endorsed kopiert haben, z. B.:
      [Windows][z/OS]
      %JAVA_HOME%\bin\java -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <Ihre_Clientanwendung>
      [AIX][HP-UX][Solaris][Linux][IBM i]
      $JAVA_HOME/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <Ihre_Clientanwendung>
    • Geben Sie den folgenden Befehl ein, wenn Sie die Datei endorsed_apis_8.5.0.jar in ein anderes Verzeichnis als das Standardverzeichnis JAVA_JRE\lib\endorsed kopiert haben, z. B.:
      [Windows][z/OS]
      %JAVA_HOME%\bin\java 
      -Djava.endorsed.dirs=<Verzeichnis_mit_endorsed_apis_8.5.0.jar>
      -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <Ihre_Clientanwendung>
      [AIX][HP-UX][Solaris][Linux][IBM i]
      $JAVA_HOME/bin/java 
      -Djava.endorsed.dirs=<Verzeichnis_mit_endorsed_apis_8.5.0.jar>
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <Ihre_Clientanwendung>

Ergebnisse

Sie haben eine nicht verwaltete JAX-WS-Clientlaufzeitumgebung konfiguriert, um Web-Services in WebSphere Application Server aufzurufen.
Fehler vermeiden Fehler vermeiden: Der folgende Befehl zeigt, wie die Version des aktiven Thin Client angezeigt wird:
java -cp (wasHome)/runtimes/com.ibm.jaxws.thinclient_8.5.0.jar com.ibm.ws.webservices.Version
Das folgende Beispiel zeigt die Ausgabe des Befehls:
IBM Web services build: cf021412.02
IBM Web services release: 8.5.5
Time stamp: 5/14/14 21:11:46
gotcha

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxwsthinclient
Dateiname:twbs_jaxwsthinclient.html