WebSphere Application Server, Version 6.1   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows, Windows Vista

             目次と検索結果のパーソナライズ化

URL を使用した WSDL ファイルの公開

この項目では、URL を使用した Web サービス記述言語 (WSDL) ファイルの公開方法について説明します。

始める前に

URL を使用して WSDL ファイルを公開するには、 まず Web サービス対応アプリケーションをインストールし、実行しておかなければなりません。

webservices.xml<wsdl-file> エレメントで参照されるファイルは、 他の WSDL ファイルまたは XML Schema Definition (XSD) ファイルをインポートする場合があります。 通常、すべての WSDL ファイルまたは XSD ファイルは、最初は、 Enterprise JavaBean (EJB) を使用している場合には META-INF/wsdl ディレクトリーに配置され、 Java Bean を使用している場合には WEB-INF/wsdl ディレクトリーに配置されます。 WSDL ファイルまたは XSD ファイルがこれらのディレクトリーに配置されていない場合、 <wsdl-file> によって参照されるファイルとそのインポート・ファイルは、 公開を目的として wsdl ディレクトリーにコピーされます。

URL 照会ストリングには 2 つの形式があります。最初の形式は、 サービスに /wsdl を付加して、HTTP および JMS バインディングのみを戻します。 2 番目の形式は、サービスに /extwsdl を付加して、 拡張 WSDL ファイル (HTTP、JMS、および EJB バインディングなど) を戻します。WSDL ファイルに EJB バインディングのみが含まれ、 /wsdl 照会が使用される場合は、ブラウザーに、 WSDL ファイルに HTTP バインディングも JMS バインディングも存在しないという意味のエラー・メッセージが表示されます。 このエラー・メッセージでは、代わりに /extwsdl 照会の使用が提案されます。 URL を使用して WSDL ファイルを公開する場合は、 アプリケーションに Web モジュールが必要です。この Web モジュールは、 アプリケーションが提供するか、HTTP ルーター・モジュールの形を取るかのいずれかです。 EJB アプリケーションに、JMS バインディングか EJB Web サービス・バインディングのみを持つ WSDL ファイルが含まれている場合は、 endptEnabler コマンドを使用して、HTTP ルーター・モジュールをアプリケーションに追加することができます。

注: 公開できるのは、HTTP URL のみです。

このタスクについて

URL を使用して WSDL ファイルを公開するには、以下のようにします。

プロシージャー

  1. 最外部 WSDL ファイルを検索します。 最外部 WSDL ファイルは、 webservices.xml ファイルの <wsdl-file> エレメントで定義されている WSDL ファイルです。

    各 Web サービスには、 http://example.com/services/stockquote のようなエンドポイント・アドレスがあります。 最外部 WSDL ファイル (webservices.xml ファイル内の <wsdl-file> エレメントで定義された) は、 http://example.com/services/stockquote/wsdl のように、 エンドポイント・アドレスにストリング /wsdl または /wsdl/ を追加することで検索できます。

  2. インポートされた WSDL ファイルを検索します。 最外部 WSDL ファイルが他の WSDL ファイルまたは XSD ファイルをインポートする場合、これらのインポート・ファイルは、最外部 WSDL ファイルの検索に使用される相対パスを URL に追加することによって検索できます。このことは、他のファイルをインポートする WSDL ファイルにも当てはまります。このプロセスは、 HTML ドキュメント内の相対ハイパーリンクの使用と類似しています。 HTML ドキュメントに他のドキュメントへのハイパーリンクが含まれている場合は、ハイパーリンク・ドキュメントにアクセスする URL を作成するために相対パスが追加されます。

次のディレクトリー構造をもつアプリケーションがあるとします。
<module-root>/
	WEB-INF/
		webservices.xml    /* the <wsdl-file> element points to "WEB-INF/wsdl/fooImpl.wsdl"*/
		web.xml
		ibm-webservices-bnd.xml

		wsdl/
			fooImpl.wsdl   /* imports foo.wsdl which is an interface wsdl */
foo.wsdl /* type definition for the interface */

foo サービスの SOAP アドレスが http://examples.com:9080/services/foo の場合、foo サービスの最外部 WSDL を検索する単純な方法は、http://examples.com:9090/services/foo/wsdl または http://examples.com:9090/services/foo/wsdl/ という形式を使用することです。URL は http://examples.com:9090/services/foo/wsdl/fooImpl.wsdl にリダイレクトされます。この fooImpl.wsdl は、最外部 WSDL ファイルの名前です。

fooImpl.wsdl ファイルにはインポート <import namespace="http://examples.com/foo" location="a/b/foo.wsdl> があるため、URL http://examples.com:9090/services/foo/wsdl/a/b/foo.wsdl を使用して foo.wsdl ファイルを取得します。




関連タスク
JAX-RPC アプリケーション用の WSDL ファイルの開発
管理コンソールを使用した WSDL ファイルの公開
wsadmin ツールを使用した WSDL ファイルの公開
タスク・トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 5:05:53 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/twbs_urlwsdl.html