1 / 14

Web サービスの dynamic Invocation に関する研究

Web サービスの dynamic Invocation に関する研究. 越田研究室 竹田 拓也. 研究目的. 1 . IBM の UDDI レジストリから Web サービスを   検索. 2. Web サービスサーバ上の WSDL ファイルの自   動解析. 3. Web サービスの動的な検出・実行. 必要になった時点で UDDI レジストリから Web サービス  を検出する。 スタブプログラムを使用せずにサービスを実行する。. システムの機能. 主な機能. tModelKey( 必須 ) 実行メソッド名 ( 必須 ) 実行メソッドに与える引数.

unity
Télécharger la présentation

Web サービスの dynamic Invocation に関する研究

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Webサービスの dynamic Invocation に関する研究 越田研究室 竹田 拓也

  2. 研究目的 1. IBMのUDDIレジストリからWebサービスを   検索 2. Webサービスサーバ上のWSDLファイルの自   動解析 3. Webサービスの動的な検出・実行 • 必要になった時点でUDDIレジストリからWebサービス  を検出する。 • スタブプログラムを使用せずにサービスを実行する。

  3. システムの機能 主な機能 • tModelKey(必須) • 実行メソッド名(必須) • 実行メソッドに与える引数 • 公開されているIBMのUDDIレジストリからWebサービスを自動検出 • WebサービスのWSDLファイルを自動解析 • 実行メソッドへの引数の型を自動判別 入力パラメータ

  4. IBM UDDIレジストリ WSDLファイル へのポインタ Webサービス tModelKey 入力パラメータ WSDLファイルへのポインタを取得 WSDL WSDLファイル クライアント サービス提供元 WSDLファイル取得の流れ tModel

  5. UDDIのデータ <businessEntity businessKey="E0270900-5C3E-11D51-A58E-0004AC49CC1E“ operator="www.ibm.com/services/uddi" authorizedName="0100003RNH"> <discoveryURLs> <discoveryURL useType="businessEntity">ht tp://www-3.ibm.com/services/udd i/testregistry/uddiget?businessKey =E0270900-5C3E-11D5-A58E-0004 AC49CC1E </discoveryURL> </discoveryURLs> <name xml:lang="en">StockQuote</name> <businessServices> <businessService serviceKey="5D0293D0-5C4・270 ・ ・ ・

  6. <message name="getRateRequest"> <partname=“country1”type="xsd:string"/> <partname="country2“type="xsd:string"/> </message> <messageame="getRateResponse"> <partname="Result" type="xsd:float" /> </message> <portType name="CurrencyExchangePortType"> <operation name="getRate"> <inputmessage="tns:getRateRequest" /> <outputmessage="tns:getRateResponse" /> </operation> </portType> ・ ・ ・ 引数の型 メソッド名 WSDLファイルのデータ

  7. UDDI4J • UDDIレジストリへのアクセスを制御 • UDDIの主要タグの登録・検出 • WSDL4J • WSDLファイルのタグ情報を解析 • WSIF • Webサービスのスタブレスな実行 開発に使用したライブラリ

  8. IBM UDDIレジストリ 入力パラメータ tModel IBM 検索 取得 UDDI UDDI4J tModelKey UDDI4J レジストリ overviewURLを取得 アクセス WSIF WSDL4J メソッド名 • メソッド名 • 引数名 • 引数の型 指定 解析 WSDLファイル Webサービスサーバ サービスの起動 起動 引数 入力メッセージの作成 WSIF 本システムの構成図 クラスライブラリ

  9. 手動 自動 既存システムとの違い 既存システムにおける実行の流れ • ローカルなWSDLファイルの読み込み • スタブプログラムの作成 • クライアントプログラムの作成 • Webサービスの実行 本システムにおける実行の流れ • リモートなWSDLファイルの読み込み・解析 • Webサービスの設定・実行 完全にスタブレスな実行を実現している

  10. リモートのWebサービスを実行するために必要 スタブプログラム の作成 WSDLファイル スタブプログラム サービス提供元 クライアントプログラム の作成 WSDLファイル サービスの起動 クライアントプログラム サービスプログラム 手動で行う 既存システムの実行の流れ ネットワーク側 ユーザ側

  11. ユーザ側 ネットワーク側 クライアントプログラム Webサービスの検索 tModelKey tModelKey WSDLファイルのポインタ WSDLファイル UDDI メソッド名 レジストリ 解析 WSDLファイルの取得 提携 • メソッド名 • 引数名 • 引数の型 サービス提供元 Webサービスの起動 引数 WSDLファイル 入力メッセージの作成 入力メッセージ 自動 サービスプログラム 本システムの実行の流れ

  12. C:\java DynamicInvocation UUID:F24269F0-3426-11D8-B936-000629DC0A53 getQuote IBM 実験結果1 Webサービス:StockQuote 実行メソッド:getQuote 引数:IBM 戻り値:株価 Reading WSDL document from ‘http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl’ Operation is succeed Result:97.7

  13. C:\java DynamicInvocation UUID:5B9833C0-FDCE-11D6-82AC-000629DC0A7B getRate USA JAPAN 実験結果2 Webサービス:CurrencyExchange 実行メソッド:getRate 引数1:USA 引数2:JAPAN 戻り値:換金レート Reading WSDL document from ‘http://www.xmethods.net/sd/CurrencyExchangeService.wsdl’ Operation is succeed Result:105.94

  14. 今後の課題 今後の課題として以下のようなものが考えられる • プログラムのインターフェースをコマンドラインからGUIに変更する。 • 本システムの入力パラメータであるtModelキー検索のためにクライアントプログラムに簡単なUDDIレジストリブラウザ機能を付加する。

More Related