14
Web サササササ dynamic Invo cation ササササササ サササササ ササ ササ

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

  • Upload
    unity

  • View
    35

  • Download
    4

Embed Size (px)

DESCRIPTION

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

Citation preview

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

越田研究室竹田 拓也

研究目的

1 . IBM の UDDI レジストリから Web サービスを  検索

3. Web サービスの動的な検出・実行 必要になった時点で UDDI からレジストリ Web サービス  を検出する。 スタブプログラムを使用せずにサービスを実行する。

2. Web サービスサーバ上の WSDL ファイルの自  動解析

システムの機能

tModelKey( 必須 ) 実行メソッド名 ( 必須 ) 実行メソッドに与える引数

入力パラメータ

主な機能 公開されている IBM の UDDI レジストリか

ら Web サービスを自動検出 Web サービスの WSDL ファイルを自動解析 実行メソッドへの引数の型を自動判別

WSDL ファイル取得の流れIBM UDDI レジストリ

Web サービス

WSDL

サービス提供元

入力パラメータ

クライアント

tModelKey

WSDL ファイル

tModel

WSDL ファイルへのポインタ

WSDL ファイルへのポインタを取得

UDDI のデータ<businessEntity businessKey="E0270900-5C3E-11D51-A58E-0004AC49CC1E“ operator="www.ibm.com/services/uddi" authorizedName="0100003RNH">

<discoveryURLs><discoveryURL useType="businessEntity">http://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

・・・

WSDL ファイルのデータ<message name="getRateRequest"> 

<part name=“country1” type="xsd:string"/><part name="country2“   type="xsd:string"/>

</message><messageame="getRateResponse"> 

<part name="Result" type="xsd:float" /> </message><portType name="CurrencyExchangePortType">

<operation name="getRate">  <input message="tns:getRateRequest" /><output message="tns:getRateResponse" />  

</operation>  </portType>

・・・

メソッド名

引数の型

開発に使用したライブラリ

UDDI レジストリへのアクセスを制御 UDDI の主要タグの登録・検出

UDDI4J

WSDL4J WSDL ファイルのタグ情報を解析

WSIF Web サービスのスタブレスな実行

本システムの構成図

UDDI4J overviewURL を取得

tModel

取得tModelKey

入力パラメータ

引数

メソッド名WSDL4J

解析 メソッド名

引数名

引数の型

指定

入力メッセージの作成

アクセス

WSIF

WSDL ファイル

WSIFサービスの起動

起動

クラスライブラリ

UDDI4J

UDDIレジストリ

検索IBM

IBM UDDI レジストリ

Web サービスサーバ

既存システムとの違い

既存システムにおける実行の流れ1. ローカルな WSDL ファイルの読み込み2. スタブプログラムの作成3. クライアントプログラムの作成4. Web サービスの実行

本システムにおける実行の流れ

完全にスタブレスな実行を実現している

手動

1. リモートな WSDL ファイルの読み込み・解析

2. Web サービスの設定・実行

自動

既存システムの実行の流れユーザ側 ネットワーク

スタブプログラムの作成

スタブプログラム

クライアントプログラム

クライアントプログラム

の作成

WSDL ファイル

リモートの Webサービスを実行するために必要

手動で行う

WSDL ファイル

サービス提供元

サービスプログラム

サービスの起動

本システムの実行の流れ

Web サービスの検索

Web サービスの起動

WSDL ファイルのポインタ

提携

クライアントプログラム

UDDI

レジストリ

ネットワーク側

サービスプログラム

サービス提供元

WSDL ファイル

ユーザ側

tModelKey tModelKey

引数入力メッセージ

の作成

入力メッセージ

メソッド名

メソッド名

引数名

引数の型

解析

自動

WSDL ファイル

WSDL ファイルの取得

実験結果1

Web サービス: StockQuote実行メソッド: getQuote引数: IBM戻り値:株価

C:\java DynamicInvocation UUID:F24269F0-3426-11D8-B936-000629DC0A53 getQuote IBMReading WSDL document from‘http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl’

Result:97.7Operation is succeed

C:\java DynamicInvocation UUID:5B9833C0-FDCE-11D6-82AC-000629DC0A7B getRate USA JAPAN

実験結果2Web サービス :CurrencyExchange実行メソッド :getRate引数 1:USA引数 2:JAPAN戻り値 : 換金レート

Reading WSDL document from ‘http://www.xmethods.net/sd/CurrencyExchangeService.wsdl’

Operation is succeedResult:105.94

今後の課題

1. プログラムのインターフェースをコマンドラインから GUI に変更する。

2. 本システムの入力パラメータである tModelキー検索のためにクライアントプログラムに簡単な UDDI レジストリブラウザ機能を付加する。

今後の課題として以下のようなものが考えられる