non-bound WSDL
ベスト・プラクティスに従ってクライアント・アプリケーションを開発する 際には、ポート・タイプ定義のみを含み、特定のバインディングやポート・アドレ スを含まない WSDL 文書に照らし合わせて開発できます。 そのような WSDL 文書を、non-bound WSDL 文書と呼びます。
Web サービスの特定のデプロイメント、バインディングおよびポート・ アドレスの詳細については、bound WSDL を使用したデプロイメント時に指定 してください。あるいは、クライアント・アプリケーションのデプロイ時 、またはその後の管理によっ て再 ターゲットするバインディング名前空間およびエンドポイント・ アドレスを指定することにより、上記の詳細を指定してください。
現行の WSDL 仕様では、サービス・エレメントからポート・タイプにリ ンクするにはバインディングとポート・エレメントが必要になるため、 これらのエレメントは non-bound WSDL 文書に存在します。しかし、サービスの特定のデプロイメ ントを定義する拡張性エレメントは含んでいません。
<definitions targetNamespace="http://www.ibm.com/websphere/sib/webservices/Service"
xmlns:tns = "http://www.ibm.com/websphere/sib/webservices/Service">
<message name="GetQuoteInput">
<part name="symbol type="xsd:string"/>
</message>
<message name="GetQuoteOutput">
<part name="value" type="xsd:float"/>
</message>
<portType name="StockQuote">
<operation name="getQuote">
<input message="tns:GetQuoteInput"/>
<output message="tns:GetQuoteOutput"/>
</operation>
</portType>
<binding name="StockQuoteBinding" type="StockQuote"/>
<operation name="getQuote"/>
</binding>
<service name="StockQuote">
<port name="StockQuotePort" binding="StockQuoteBinding" />
</service>
</definitions>"
デプロイメント時に、bound WSDL は通常、開発用に使用されるものと置き換えられます。bound WSDL が置き換えられた後は、ポート・バインディングおよ びアドレスを再ターゲットとすることができます。再ターゲットするバインディング名前空間およびエンドポイント・アドレスを空のポート用に指定する場合には 、non-bound WSDL を置き換えずにそのまま使用できます。
インバウンド・サービス構成を変更する と、Web サービス・アクセス用に使用可能となっているバス宛先の non-bound WSDL を圧縮ファイルにエクスポートすることができます。 次に、エクスポートされた non-bound WSDL 文書を使用し、メッセージン グ宛先を介して Web サービス・メッセージを送信する Web サービス・リクエ スター・アプリケーションを開発することができます。
あるいは、java2wsdl ツールを使用して 、non-bound WSDL を作成することができます。java2wsdl ツールは、-bindingTypes オプションに値 "none" を持ちます。 この値を指定すると、java2wsdl ツールは Java オブジェクトを表すために WSDL 文書の non-bound バージョンを作成します。