WebSphere Application Server では、
HTTP または Java Message Service (JMS) を使用してサーバーとクライアント間の要求を移送する代わりに、
Web サービスとして Enterprise Bean に直接アクセスできます。
Web サービスとして使用される EJB モジュールには、
Web サービス記述言語 (WSDL) ファイルが含まれ、このファイルには EJB バインディングが含まれています。
このタスクについて
注:
Feature Pack for Web Services は JMS トランスポートまたは EJB をサポートしません。
このリリースがサポートしているのは、JAX-WS の Web サービス・アプリケーション用の Web コンテナー内の、JavaBeans エンドポイントのみです。
EJB に基づいて Web サービスを開発するには、
JAX-RPC プログラミング・モデルを使用する必要があります。
また、JAX-WS アプリケーションは、JMS を Web サービス要求のトランスポートとして使用できません。
代わりに、HTTP をトランスポートとして使用する必要があります。
デフォルトのメッセージング・プロバイダー (JMS を使用します) は、Web サービス要求に使用しない限り、
JAX-WS アプリケーション内で使用できます。
サービス・エンドポイントの構成は、Web サービス・クライアントを、アセンブルされているコンポーネント間の任意の Web サービス、または任意の外部 Web サービスに接続するために必要となります。
EJB バインディングによって直接アクセスされる Web サービスに、
Enterprise Bean の Web アドレス・エンドポイントを指定するには、
管理コンソールの「Provide JMS and EJB endpoint Web address information」パネルを使用します。
直接 EJB アクセスの使用のために構成されるモジュールがある場合、
モジュールは管理コンソールの「Provide JMS and EJB endpoint Web address information」パネルにリストされます。
EJB エンドポイントは、
application_name_ExtendedWSDLfiles.zip ファイルにある WSDL でのみ使用可能です。
各モジュール内の Web サービスに使用されるエンドポイント Web アドレスのフラグメントを指定できます。
管理コンソールで Enterprise Bean の Web アドレス・エンドポイントを構成するには、次のようにします。
プロシージャー
- 管理コンソールを開きます。
- 「アプリケーション」>「エンタープライズ・アプリケーション」>「application_instance 」>「JMS
および EJB エンドポイント URL 情報の指定」とクリックします。
- EJB モジュールのリストを見付けます。
- アプリケーション・モジュールを選択します。
- 「URL フラグメント」フィールドに Web アドレス・フラグメントを入力します。
Web サービスのデプロイメント情報を調べることによって得られる初期の Web アドレス部に対する
接尾部の Web アドレス・フラグメントを入力します。
詳しくは、このタスクに続く例を参照してください。
入力する値は、「Publish WSDL zip files」パネルの application_name_ExtendedWSDLFiles.zip ファイル名リンクを使用してパブリッシュされる WSDL ファイル内で、
ポートの generic:address エレメントのロケーション属性を定義するために使用されます。
zip ファイル名はパネルにリンクとしてリストされます。
- 「OK」をクリックします。
- 「保管」をクリックします。
結果
EJB バインディングによって直接アクセスされる Web サービス用に、
Enterprise Bean の URL エンドポイントが構成されました。
例
以下の例は、「URL フラグメント」フィールドに入力する Web アドレス・フラグメントを示しています。
以下の Web アドレス情報は、Enterprise Bean のデプロイメント記述子から取得できます。
wsejb:/com.acme.sample.MyStockQuoteHome?jndiName=ejb/MyStockQuoteHome
「URL フラグメント」フィールドに、以下の Web アドレス・フラグメントを入力します。
jndiProviderURL=corbaloc:iiop:myhost.mycompany.com:2089
次の例にその結果を示します。
wsejb:/com.acme.sample.MyStockQuoteHome?jndiName=ejb/MyStockQuoteHome&jndiProviderURL=
corbaloc:iiop:myhost.mycompany.com:2089