WebSphere Web サービスの設定

WebSphere® Web サービス設定ページでは、WebSphere Web サービスを作成または利用するときに 使用する、以下の設定を行うことができます。

セキュリティー

FIPS 準拠アルゴリズムのみを表示:
FIPS 準拠のアルゴリズムのみを「データ暗号化メソッド・アルゴリズム」および「鍵暗号化方式アルゴリズム」のドロップダウン・リストに表示したい場合はこれを選択します。このオプションは、WebSphere 管理コンソールの 「グローバル・セキュリティー」パネルで「連邦情報処理標準 (FIPS) を使用する」 オプションが設定されている WebSphere Application Server でこのアプリケーションを実行することを予定している場合に 使用します。
実際のパスワードの代わりに '*' を表示する
デフォルトでは、ワークベンチにはパスワードの文字ではなく、アスタリスク (*) が表示されます。

プライベート UDDI レジストリー

このセクションを使用して、UDDI カテゴリーのデータの列区切り文字およびストリング区切り文字を設定します。
  • デフォルトの列区切り文字は # です。
  • デフォルトのストリング区切り文字は " です。

JAX-RPC コード生成

本トピックでの情報に加えて、いくつかの JAX-RPC Web サービスの設定についての詳細が記載されている記事がいくつか developerWorks® で公開されています。
Java2WSDL
  • スタイルおよび使用: WSDL ファイルに生成されるスタイルおよび使用の組み合わせを指定します。この組み合わせは、エンコードされた RPC、RPC リテラル、または文書リテラルです。
  • ターゲット名前空間 : 生成される WSDL のデフォルトのター ゲット名前空間を入力します。
  • 折り返し: 折り返しルールに従って WSDL ファイルを生成するかどうかを指定します。このオプションは、リテラルのみを使用する場合に有効です。 オプションのデフォルトは true です。どのスタイルの WSDL を使用すべきかに関する追加情報については、次の developerWorks 記事を参照してください。 Which Style of WSDL Should I Use?
  • WSDL 1.1. Mime 添付を排他的に使用: MIME 型が WSDL 1.1 標準にマップできない場合は、このコマンドは失敗します。
  • SOAP アクション: このオプションは、生成された WSDL の soapAction フィールドの設定に使用されます。デフォルトでは、soapAction フィールドはデプロイメント情報に基づいて設定されます。 「なし」を指定すると、soapAction フィールドは二重引用符 ("") に設定されます。「Operation」を指定すると、soapAction フィールドにはオペレーション名が設定されます。
  • ボイドを戻す: このフィールドは、戻りの型が void である Web サービス・メソッドで使用され、Web サービスからの応答が予想されるかどうかを示します。void 戻りのあるメソッドが片方向です。この引数は JMS トランスポートの場合のデフォルトです。 void 戻りのあるメソッドが両方向です。この引数は HTTP トランスポートの場合のデフォルトです。
  • デフォルト・バインディング: 出力 WSDL ファイルに書き込まれるバインディング・タイプのリストを指定します。Java2WSDL コマンドのそれぞれのバインディング 生成プログラムが固有のバインディング・タイプをサポートします。 有効なバインディング・タイプ値は、 HTTP (SOAP over HTTP)、JMS (SOAP over JMS) および EJB (ローカルまたはリモートの EJB 呼び出し) です。
  • JAX-RPC に準拠しているか Java クラスを検証する: これが選択されていると、ウィザードはコードを生成する前に Java クラスが JAX-RPC に準拠しているか検証します。
WSDL2Java
  • デフォルトのサービス有効範囲: これは、サーバーの実装をデプロイする方法を示しています。アプリケーションは、すべての要求について実装クラスの 1 つのインスタンスを使用します。 要求は、各要求ごとに新しい実装クラス・インスタンスを 1 つ作成します。 セッションは、各セッションごとに新しい実装クラス・インスタンスを 1 つ作成します。
  • スケルトン生成用に -noWrappedOperations を使用: ラップされた操作の検出を使用不可にします。要求の Java Bean および応答メッセージが生成されます。
  • データ・バインディングを使用不可にして SOAPElement を使用: XML タイプの Java タイプへのバインディングを使用不可にします。代わりに、それぞれの XML タイプは、Java (SAAJ) 1.2 仕様の SOAP with Attachments API によって定義された javax.xml.soap.SOAPElement インターフェースにマップされます。 JAX-RPC 仕様は、XML タイプのサブセットの Java マッピングを 定義します。一部の XML タイプは、Java Bean またはプリミティブにはマップできません。この状況では、WSDL2Java コマンドは タイプを SAAJ SOAPElement にマップします。SAAJ SOAPElement は、 メッセージ内の要素の一般表現です。SOAPElement のメソッドは、要素と その子を調べるために使用可能です。
  • Java クラスから SDO ファサードを生成する: これは、ウィザードがデフォルトで使用する、JAX-RPC スキーマから Java へのマッピングを部分的に使用不可にし、代わりに XML スキーマの Java Eclipse EMF SDO 表現を使用します。これは、JAX-RPC マッピングが正常に処理しないコンテンツが XML スキーマに 含まれている場合に役に立つことがあります。SDO ファサードを生成する場合は、「データ・バインディングを使用不可にして SOAPElement を使用」を選択してください。
  • ロード可能な Java クラスを上書きしない: これは、JAX-RPC ボトムアップ Web サービス・ウィザードのみを対象とします。このオプションが選択された場合、ウィザードは、以下のいずれのターゲット・プロジェクトにも Java クラスの書き込みを一切行いません。
    • プロジェクトに存在していないターゲット・プロジェクト
    • アプリケーションがサーバーで稼働している際に、 ターゲット・プロジェクトからロード可能な、プロジェクト、モジュール、 または JAR ファイルに存在していないターゲット・プロジェクト
    このオプションを選択しない場合は、 ウィザードが Java クラスをターゲット・プロジェクトに書き込む場合があります。 そのターゲット・プロジェクトは、その他のプロジェクト、モジュール、 または JAR ファイルにある同じ名前を持つ既存のクラスをマスクします。 これによりランタイム環境エラーおよびコンパイル・エラーが起こることがあります。この設定は Web サービス Java または EJB スケルトン・ウィザードには適用されないことに注意してください。適用されるのは、JAX-RPC ボトムアップ Web サービス・ウィザードのみです。
    注: このチェック・ボックスは、Web サービス・ウィザードで表示される「警告なしにファイルを上書き」チェック・ボックスには従属していません。そのチェック・ボックスを選択しても、この設定は無視されません。 しかし、ボトムアップのシナリオを実行している場合、WSDL2Java エミッターを使用して WSDL から自動生成された Java コードは、「警告なしにファイルを上書き」チェック・ボックスの設定に従います。 これには、プロキシーやサービス・エンドポイント・インターフェースなどのファイルが含まれます。
  • Web サービス・メタデータを保存する: これを選択すると、Web サービス・メタデータが現在のワークスペースの .backup というフォルダーに置かれます。 プロジェクト・メタデータ・ファイルを プロジェクトの .backup フォルダーにあるファイルに置換する方法は、以下のとおりです。
    1. .backup フォルダーの中のファイルを選択して右クリックし、「コピー」を選択します。
    2. プロジェクトの中からメタデータ・ファイルがあるフォルダーを選択して右クリックし、 「貼り付け」を選択します。ファイルの上書きを確認するメッセージが出たら、 「はい」を選択します。
    注: プロジェクトの特定のビュー内にある .backup フォルダー内のファイルを 1 つ表示させるには、.*resources フィルターがそのビューに適用されていないことを確認してください (「メニューの表示」>「ビューのカスタマイズ」)。
  • すべてのタイプの Java ファイルを生成: これを選択すると、参照されていないファイルを含めて、WSDL ファイル内で記述されているすべてのタイプの Java ファイルが生成されます。
  • スケルトン生成用に -noWrappedArrays を使用: ラップされた配列の 検出を使用不可にします。
  • hashcode() および equal() メソッドを生成する: 生成されるそれぞれの Java Bean が equal メソッドと hashCode メソッドを持つことを示しています。 デフォルトは、false です。
  • 生成された Bean が java.io.Serializable を実装する: 生成されるそれぞれの Java Bean が java.io.Serializable を実装することを示しています。 デフォルトは、false です。
  • 相対名前空間を許可 (Allow relative namespace): Web サー ビスを作成するときに相対名前空間を許可す る場合、このチェック・ボックスを選択します。相対名前空間の使用は、インターオペラビリティーの問題を起こすため、推奨されません。 相対名前空間を使用するすべての Web サー ビスは WS-I 非準拠と見なされます。
V6 シン・クライアント (V6 Thin Client)

バージョン 6.0.2 から、WebSphere Application Server は、Java SE JAX-RPC Web サービス・クライアントを構築および実行できる jar を導入しました。 WebSphere v6 シン・クライアントのオプションを使用して、独立型 Java プロジェクトで IBM® WebSphere v6 JAX-RPC Web サービス・クライアントの作成中に Java プロジェクトに追加されるクラスパス変数として使用するためのシン・クライアントを登録できます。

Web サービス設定ページで WebSphere v6 シン・クライアント jar を使用可能にして登録するように選択しておけば、Java プロジェクト (WebSphere Application Server v6.x を JRE として使用し、Java 1.4 ファセットが使用可能なもの) を作成して、この Java プロジェクトに Web サービス・クライアントを生成できます。

  • WebSphere V6 シン・クライアント の使用 (Use WebSphere V6 thin client): Web サービスに Java SE シン・クライアントを使用する場合、これを選択します。
  • パス: ibm-jaxrpc-client.jar への完全修飾パスを入力します。 Rational® Application Developer を使用して自動で この jar を検出しようとする場合は、「 検出」をクリックするか、または手動で パスを入力します。

JAX-WS コード生成

トップダウン
  • WSDL をプロジェクトへコピーする: これを選択すると、Web サービスを作成する元となる WSDL ファイルが Web サービス・プロジェクトへコピーされます。このオプションは、クライアントを後で作成する場合や WSDL を他のユーザーに公開する場合に便利です。
  • ラッパー・スタイルを有効にする: document/literal ラップ・パターンを実装する WSDL ドキュメントの場合は、XML スキーマ内にルート要素が宣言され、メッセージ・フローのオペレーション・ラッパーとして使用されます。要求と応答のそれぞれについて別個のラッパー要素定義が存在します。 つまり、オペレーションと同じ名前を持つ要素 (ラ ッパー要素) は、そのコンテンツ要素の各々が生成済み Java メソッド・シグニチャーのパラメー ターになるように分離されます。
  • 順序付け可能な JAXB クラスの生成: WebSphere Application Server v7.0 および v8.0 で、Java 6 ファセットを使用可能にすると、java.io.Serializable を実装する JAXB クラスの生成を選択できます。このインターフェースを実装していないクラスの状態は、シリアライズ済みになったりデシリアライズ済みになったりしません。
  • MTOM サポートを有効にする: このチェック・ボックスを選択すると、SOAP Message Transmission Optimization Mechanism が有効になります。
  • XSD ファイルからスキーマ・ライブラリー・プロジェクトを生成 (Generate schema library project from XSD file): これを選択すると JAX-WS Schema to Java コンパイラーが実行され、スキーマ・コードがスキーマ・ライブラリーに生成されます。
  • Web サービス・デプロイメント記述子の生成: JAX-WS Web サービスのデプロイメント情報がランタイムによって動的に生成されます。静的デプロイメント記述子は必要でなくなります。このチェック・ボックスを選択するとそれらの記述子が生成されます。
  • 生成する JAX-WS コードのバージョン: WebSphere Application Server v7.0 以降にデプロイする場合は JAX-WS 2.1 準拠のコードを生成でき、 WebSphere Application Server v8.0 を使用する場合は JAX-WS 2.2 準拠コードを生成できます。 以前のバージョンのサーバーでは、JAX-WS 2.0 のみがサポートされます。
ボトムアップ
  • SOAP 1.2 サポートを有効にする: SOAP 1.1 と SOAP 1.2 バインディングのいずれかを選択することができます。
  • MTOM サポートを有効にする: このチェック・ボックスを選択すると、SOAP Message Transmission Optimization Mechanism が有効になります。
  • Java から WSDL へのマッピング・スタイル: Java から WSDL へのマッピング・スタイルを指定します。このスタイルは、Web サービスとの間で送受信されるメッセージのエンコード・スタイルを定義します。パラメーター・スタイルによって、メソッドのパラメーターがメッセージ本文全体を表すものかどうか、または、それらのパラメーターが、操作の名前が付けられる最上位の要素内でラップされる要素であるかどうかが決まります。有効な組み合わせは、RPC、Document/Wrapped、または Document/Bare です。
  • WSDL をプロジェクトに生成する (Generate WSDL into the project): WSDL ファイルを Web サービス・プロジェクトに生成 する場合にこれを選択します。このオプションは、クライアントを後で作成する場合や WSDL を他のユーザーに公開する場合に便利です。
  • Web サービス・デプロイメント記述子の生成: JAX-WS Web サービスのデプロイメント情報がランタイムによって動的に生成されます。静的デプロイメント記述子は必要でなくなります。このチェック・ボックスを選択するとそれらの記述子が生成されます。
クライアント
  • 非同期クライアント・サポートを有効にする: 非同期クライアントを使用可能にするオプションを選択した場合は、Web サービスのメソッドごとに 2 つの追加メソッドが作成されます。それはポーリング・メソッドとコールバック・メソッドであり、クライアントが非同期で機能できるようにします。
  • 順序付け可能な JAXB クラスの生成: WebSphere Application Server v7.0 および v8.0 で、Java 6 ファセットを使用可能にすると、java.io.Serializable を実装する JAXB クラスの生成を選択できます。このインターフェースを実装していないクラスの状態は、シリアライズ済みになったりデシリアライズ済みになったりしません。
  • ポータブル・クライアントの生成 (Generate portable client): このチェ ック・ボックスを選択すると、Web サービス・クライ アント・コードを、マシンの間または WebSphere Application Server のインスタンスの間で移動できます。このオプ ションを選択した場合、 WSDL 文書と、この WSDL 文書が依存する、すべての XML スキーマおよび他の WSDL 文書は、WEB-INF/wsdl 下のク ライアント・プロジェクトにコピーされ、 このコピーを指す file:relativeURL は、JAX-WS サービス・クラスの静的初期化ブロック に注入されます。
  • Web サービス・デプロイメント記述子の生成: JAX-WS Web サービスのデプロイメント情報がランタイムによって動的に生成されます。静的デプロイメント記述子は必要でなくなります。このチェック・ボックスを選択するとそれらの記述子が生成されます。
  • overriddenEndpointURI テンプレートの生成: 有効になっていると、Web サービスの起動時にクライアントが使用するエンドポイント URL をオーバーライドする、WebSphere 拡張デプロイメント記述子が生成されます。これは、クライアントが JSR-109 を使用しているときのみ (つまり、クライアント・サービス参照のデプロイメント記述子があるときのみ) 効果があります。その他の場合、クライアントは管理されていない形式で実行され、この設定は無視されます。デプロイメント記述子を生成して TCP/IP モニターを使用しようとすると、エンドポイントは固定され、TCP/IP モニターでトラフィックは認識されません。
  • MTOM サポートを有効にする: このチェック・ボックスを選択すると、SOAP Message Transmission Optimization Mechanism が有効になります。
  • 生成する JAX-WS コードのバージョン: WebSphere Application Server v7.0 以降にデプロイする場合は、JAX-WS 2.1 準拠のコードを生成できます。 以前のバージョンのサーバーでは、JAX-WS 2.0 のみがサポートされます。

フィードバック