Interstage Application Server J2EE ユーザーズガイド
|
目次
索引

|
19.2.3 Webサービスクライアントアプリケーションを開発する
Webサービスクライアントは、WSDLから生成したスタブを利用してWebサービスを呼び出す処理を行う任意のクラスです。この処理では、以下のオブジェクトを利用します。
- JAX-RPCで提供されるjavax.xml.rpc.ServiceFactoryオブジェクト
Serviceオブジェクトの生成を行います。
- WSDLから生成された、ServiceインタフェースおよびServiceオブジェクト
呼び出すWebサービス全体に対応するクラスです。Serviceオブジェクトは、Serviceインタフェースをimplementsし、スタブオブジェクトの生成機能を備えています。WSDLのtargetNamespaceに基づいたパッケージ名と、WSDLのserviceのnameに基づいたクラス名でアクセスします。
- WSDLから生成された、サービスエンドポイントインタフェースおよびスタブオブジェクト
呼び出すWebサービスアプリケーションに対応するクラスです。スタブオブジェクトは、サービスエンドポイントインタフェースをimplementsし、Webサービスの呼び出し機能を備えています。WSDLのtargetNamespaceに基づいたパッケージ名と、WSDLのportTypeのnameに基づいたクラス名でアクセスします。
■ 処理の流れ
- ServiceFactoryオブジェクトを生成する
- ServiceFactoryオブジェクトからServiceオブジェクトを取得する
- Serviceオブジェクトからスタブオブジェクトを取得する
- スタブオブジェクトのメソッドを呼び出す

Serviceインタフェースのクラス名が“StockQuoteProviderService”、サービスエンドポイントインタフェースのクラス名が"StockQuoteProvider"、呼び出すWebサービスのオペレーションの名前が"getLastTradePrice"の場合についての処理例です。
ServiceFactory sf = ServiceFactory.newInstance();//(1)
StockQuoteProviderService sqs = (StockQuoteProviderService) sf.loadService(StockQuoteProviderService.class);//(2)
StockQuoteProvider sqp = sqs.getStockQuoteProviderPort();//(3)
float price = sqp.getLastTradePrice(tickerID);//(4) |

All Rights Reserved, Copyright(C) 富士通株式会社 2006