WebSphere® Application Server は、Java™ API for XML-based Web Services (JAX-WS) 2.2 仕様に基づく
Java Platform, Standard Edition 6 (Java SE 6) Web サービス・シン・クライアント・ランタイム実装を提供します。Thin Client for JAX-WS with WebSphere Application Server は、スタンドアロンの Java SE 6 クライアント環境
であり、管理対象外の JAX-WS Web サービス・クライアント・アプリケーションを WebSphere 以外の環境で実行し、
アプリケーション・サーバーによってホストされる Web サービスを呼び出すことができます。
始める前に
サポートされる構成: Thin Client for JAX-WS with
WebSphere Application Server は、スタンドアロン・クライアント・ランタイムとして、純粋な Java
SE 環境または OSGi 環境内で使用できます。Thin Client for
JAX-WS の、
WebSphere Application Server 内または WebSphere Application Client 環境内での実行は
サポートされません。このバージョンのアプリケーション・サーバーでは、
アプリケーション・サーバーにより提供される他の Thin Client ランタイム (管理 Thin Client を除く) も
CLASSPATH に指定して、Thin Client for JAX-WS と共存させることができます。
sptcfg
JAX-WS 管理対象外のクライアント実行環境をセットアップする前に、
Thin Client for JAX-WS Java アーカイブ (JAR) ファイルを取得してください。Thin Client for JAX-WS を取得するには、WebSphere Application Server バージョン 9.0 または Application Client for WebSphere Application Server バージョン 9.0 をインストールしてください。Thin Client
for JAX-WS JAR ファイル com.ibm.jaxws.thinclient_8.5.0.jar は、app_server_root¥runtimes ディレクトリーにあります。
Thin Client for JAX-WS (com.ibm.jaxws.thinclient_8.5.0.jar ファイル
および endorsed_apis_8.5.0.jar ファイル) を他のマシンにコピーして、
製品と通信できる単純なクライアント環境を作成します。Thin Client for JAX-WS のコピーには、Thin Client for JAX-WS を取得した
WebSphere 製品に対する使用許諾契約書の条項が適用されます。
正しい使用法およびその他の制約については、使用許諾契約書を参照してください。
Thin Client for JAX-WS は、
以下の環境でサポートされます。
- IBM® Software Development Kit (SDK) バージョン 6.0:
- 非 IBM SDK V6.0。以下の制約があります。
- 非 IBM SDK 上の Xerces の制限
Xerces-J バージョン 2.6.2 をダウンロードし、Thin Client for JAX-WS 環境をセットアップするときにファイルをクラスパスに追加する必要があります。
- 非 IBM SDK 上の WS-SecurityKerberos
WS-SecurityKerberos は、Sun JDK またはその他の非 IBM SDK では
サポートされません。WS-Security メッセージ・レベル保護を使用し、
Web Services Security Kerberos Token Profile 1.1 仕様に記述されているように Kerberos セキュリティー・トークン
を使用する、Thin Client for JAX-WS 環境で実行されるアプリケーションは、非 IBM JDK では
正しく作動しません。この制約は、IBM SDK 内でのみ使用可能な IBM JGSS プロバイダーへの依存性によるものです。
- Equinox 3.6 OSGi ランタイム環境
このタスクについて
以下のステップを実行して、Thin Client for JAX-WS 環境をセットアップします。
手順
- Thin Client for JAX-WS JAR ファイル com.ibm.jaxws.thinclient_8.5.0.jar を
他のマシンにコピーして、軽量クライアント環境を作成します。
- Java Endorsed Standards Override Mechanism を
使用して、システム上の JDK で使用可能な API をオーバーライドします。
WebSphere Application Serverバージョン 9.0 の Thin Client for JAX-WS では、JAX-WS 2.2 および JAXB 2.2 実装を
サポートするために、JDK で使用可能な API よりも新しい API が必要です。
このため、Java Endorsed Standards Override Mechanism を使用して、
システムが使用しているデフォルトの JDK API をオーバーライドする必要があります。
app_server_root¥runtimes¥endorsed¥endorsed_apis_8.5.0.jar ファイルをデフォルト・ディレクトリー JAVA_JRE¥lib¥endorsed にコピーします。あるいは、java.endorsed.dirs プロパティーを使用して、任意のディレクトリーを
指定することもできます。代わりのディレクトリーを使用する場合のベスト・プラクティスは、endorsed_apis JAR ファイルのみを組み込むことです。
- パスを構成します。 以下のコマンドを入力して、
Java bin ディレクトリーをパスに追加します。
![[Windows]](../images/windows.gif)
![[z/OS]](../images/ngzos.gif)
set PATH=<your_JDK_bin_directory>;%PATH%
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Solaris]](../images/solaris.gif)
![[Linux]](../images/linux.gif)
export PATH=<your_JDK_bin_directory>:$PATH
- クラスパスを構成します。
- オプション: クライアントのポリシー・セットを実装します。
- クライアントの SSL を構成します。
- 以下のシステム・プロパティーを Java コマンドに追加します。
-Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props
ファイル ssl.client.props は、WebSphere Application Server のインストール済み環境から取得可能であり、ユーザーの環境に合わせて変更できます。ターゲット環境のロケーションに一致させるために、少なくとも、ssl.client.props ファイル内の com.ibm.ssl.keyStore および com.ibm.ssl.trustStore 鍵ファイルのロケーションを更新する必要があります。
例えば、Sun JRE でアプリケーションを実行する場合は、次の SSL 構成設定を使用します。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=JKScom.ibm.ssl.trustStoreProvider=SUN
com.ibm.ssl.trustStore=/home/user1/etc/trust.jks
鍵ストア・ファイル
およびトラストストア・ファイルは、アプリケーションの実行前に、Java 鍵ツール・ユーティリティーを使用して作成する必要があります。IBM 以外の製品の JRE では、自動鍵ファイル生成はサポートされません。
- 以下のようにして、クライアント・アプリケーションを実行する。
- endorsed_apis_8.5.0.jar ファイルを JAVA_JRE¥lib¥endorsed デフォルト・ディレクトリーに
コピーした場合は、例えば、次のコマンドを入力します。
![[Windows]](../images/windows.gif)
![[z/OS]](../images/ngzos.gif)
%JAVA_HOME%¥bin¥java -Dcom.ibm.SSL.ConfigURL=file:¥¥¥home¥sample¥ssl.client.props <your_client_application>
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Solaris]](../images/solaris.gif)
![[Linux]](../images/linux.gif)
![[IBM i]](../images/iseries.gif)
$JAVA_HOME/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <your_client_application>
- endorsed_apis_8.0.0.jar ファイルをデフォルトの endorsed_apis_8.5.0.jar ディレクトリー以外の
ディレクトリーにコピーした場合は、例えば、次のコマンドを入力します。
![[Windows]](../images/windows.gif)
![[z/OS]](../images/ngzos.gif)
%JAVA_HOME%¥bin¥java
-Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_8.5.0.jar>
-Dcom.ibm.SSL.ConfigURL=file:¥¥¥home¥sample¥ssl.client.props <your_client_application>
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Solaris]](../images/solaris.gif)
![[Linux]](../images/linux.gif)
![[IBM i]](../images/iseries.gif)
$JAVA_HOME/bin/java
-Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_8.5.0.jar>
-Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <your_client_application>
タスクの結果
WebSphere Application Server 上でホストされる Web サービスを呼び出すために、管理対象外 JAX-WS クライアント・ランタイム環境をセットアップしました。
トラブルの回避 (Avoid trouble): 次のコマンドは、実行中のシン・クライアントのバージョンを表示する方法を示しています。
java -cp (wasHome)/runtimes/com.ibm.jaxws.thinclient_8.5.0.jar com.ibm.ws.webservices.Version
以下の例は、このコマンドの出力を示します。
IBM Web services build: cf021412.02
IBM Web services release: 8.5.5
Time stamp: 5/14/14 21:11:46
gotcha