?wsdl を使用して Web サービスに問い合わせできます。
Web サービス・クライアントは、 WebSphere® Message Broker Web サービスに ?wsdl 照会ストリング付きの HTTP GET 要求を送信し、サービスのエンドポイントとなる入力ノードの構成で使用された WSDL の表現を受信できます。 この操作を実行できるのは、JMS トランスポートではなく HTTP トランスポートを使用する入力ノードの場合に限られます。 HTTP GET 要求のプロトコルは、フローのプロトコルと一致していなければなりません。 例えば、フローで SSL を使用していれば、HTTP GET 要求を https:// で始める必要があります。
クライアントは、簡単な ?wsdl 照会を送信して操作を開始し、参照先のインポートまたはインクルードのチェーンをたどって完全な WSDL 定義を取得します。 例えば、Web サービス・エンドポイントが http://localhost:7800/test1 であれば、最初のクライアント要求は、以下のようになります。
GET http://localhost:7800/test1?wsdl
この要求からは、最上位の WSDL サービス定義が返されます。 その定義には、WSDL 定義の他のセクションのインポートが含まれている場合があります。 例えば、返された WSDL に以下の行があるとします。
<wsdl:import ... location="http://localhost:7800/test1?wsdl=wsdl0"/>
その場合、クライアントは、WSDL のそのセクションを取得するために、対応する要求を送信します。
GET http://localhost:7800/test1?wsdl=wsdl0
1 つ以上の WSDL セクションに XML スキーマ・データのインポートが含まれている場合もあります。以下に例を示します。
<xsd:import ... schemaLocation="http://localhost:7800/test1?xsd=xsd0"/>
この場合も、クライアントは、そのデータを取得するために、対応する要求を送信します。
GET http://localhost:7800/test1?xsd=xsd0
返される WSDL 定義は、ツールキットに含まれているデプロイ可能 WSDL からインライン・スキーマを外部化した定義と論理的に同等になります。 物理的には、インポートしたオリジナルの WSDL 定義とは同じでない場合もあります。 SOAPInput が特定の WSDL バインディングで構成されていても、インポートしたオリジナルの WSDL 定義に、フローで使用されない他のバインディングが含まれていれば、返される WSDL にもそれらのバインディングが含まれることになります。