Comments
Description
Transcript
プロキシサーバによる WEB アプリケーションの WEB サービス変換
情報処理学会第67回全国大会 3Q-5 プロキシサーバによる WEB アプリケーションの WEB サービス変換 高橋 健一† 東京電機大学 1. はじめに 紫合 治‡ 情報環境学部 を兼ね備えるシステムが必要となる.また, WEB アプリケーションに対してユーザが入力す るパラメータと,レスポンスとして必要な HTML ドキュメント内の情報を WSDL と関連付 けることが必要である. 近年,様々な業務システムが WEB サービス の連携によって開発されている.特に,企業間 システムの開発において,サービス指向アーキ テクチャの活用は非常に有効である.しかしな がら,現在利用しているシステムの WEB サー ビス化にかかるコストや,その効果に疑問を感 じ,導入できない場合もある.また,連携させ たいシステムが WEB サービスとして実装,公 開されていない場合,そのシステムを管理して いる企業,もしくは個人の対応を待たなければ いけない. そこで本稿では,現在 WEB アプリケーショ ンとして実装されているシステムを対象とし, 図 1. システムアーキテクチャ 少ないコストで,システムの利用者でも WEB サービス化が可能となる WEB アプリケーショ ンの WEB サービス変換方式を提案する.また, 3. WEB サービス変換アーキテクチャ この方式による WEB サービス変換を支援する 本研究では,プロキシサーバを用いて WEB ためのツールを開発した. アプリケーションを WEB サービスへと変換す るアプローチをとった(図 1).このプロキシサ 2. WEB アプリケーションと WEB サービ ーバはサービス・プロバイダとして WSDL を公 ス 開する.サービス・リクエスタが SOAP プロト コルによって WEB サービス呼び出しを行うと, WEB アプリケーションを利用するユーザは プロキシサーバは仮想ブラウザを利用して WEB WEB ブラウザを操作し,HTTP プロトコルで アプリケーションを公開しているサーバと HTML ドキュメントを要求する.それに対して HTTP プロトコルによる通信を行う.そして, WEB サービスは,サービスを利用するサービ サービス・リクエスタへ SOAP プロトコルによ ス・リクエスタがサービスを提供するサービ る応答を返す.図 2 にプロキシサーバのアーキ ス・プロバイダへ WEB サービスのインタフェ テクチャを示す. ース記述である WSDL に基づいた SOAP プロト これにより,WEB アプリケーションを WEB コルによって XML ドキュメントを要求する. サービスへと変換することが可能となる.なお, つまり,WEB アプリケーションを WEB サー WEB サービス実装として Apache Axis を,仮想 ビスへと変換するためには,サービス・リクエ ブラウザとして HttpUnit を利用した. スタに対するサービス・プロバイダとしての機 能と,WEB サーバに対するクライアントの機能 Translation from WEB Application to WEB Service by Proxy Server † Kenichi Takahashi ‡ Osamu Shigo School of Information Environment Tokyo Denki University 図 2. プロキシサーバアーキテクチャ 3−113 4. 支援ツールの開発 <?xml version="1.0" encoding="UTF-8"?> <service name=“convertSample“ url="http://localhost:8080/app2service/sample.jsp"> <form name="form1" submit="submit1"> <input name="text1" static="false"/> <input name="radio1" static="true" value="male"/> </form> <response name="id" path="/html/body/table/tr[1]/td[1]"/> </service> 4.1. システム概要 関連研究(参考文献[1],[2])では,WEB サ ービスへの変換ルールをスクリプト言語で作成 する方式をとっている.しかし,WEB アプリケ ーションを利用するユーザは WEB ブラウザを 利用してアプリケーションを操作する.本支援 ツールでは,HTML 表示機能と Form 情報解 析・表示機能により,WEB サービス変換ルール を作成する過程を WEB ブラウザの操作に近づ け た . ま た , WEB サ ー ビ ス 変 換 ル ー ル か ら WEB サービスの作成,およびサービスの公開ま での支援機能も搭載した. 図 4. WEB サービス変換ルール XML 例 4.3. WEB サービス作成・公開 Apache Axis 上で WEB サービスを公開するた めには,WEB サービスのインタフェースとそれ を配備するための WSDD が必要である.本支援 ツールでは上記の WEB サービス変換ルール XML からサービスのインタフェース,インタフ ェースの実装クラス,WSDD を生成する. ユーザはこれらのファイルをプロキシサーバ へ配備することで WEB サービスを公開するこ とが可能となる. 5. まとめと今後の課題 図 3. 支援ツール画面例 4.2. WEB サービス変換ルール作成 本支援ツールは,HTML 表示部と Form 情報 解析・表示部から構成される.図 3 にツールの 画面例を示す。左側が HTML 表示部,右側が Form 情報表示部である.ユーザは WEB アプリ ケーションを操作する際に入力するパラメータ をシステムに入力し,システムは入力されたパ ラメータで WEB アプリケーションを公開して いるサーバに HTTP リクエストを送信する.こ の際,ユーザは HTML 表示機能によって WEB アプリケーションの動作を確認しながら作業で きる.WEB サービスのレスポンスとする情報を 含む HTML が表示された際に,ユーザはその情 報の位置をシステムに通知する.システムは, 入力されたパラメータ情報と,レスポンスの位 置情報から WEB サービス変換ルールを作成し 出力する.図 4 に出力される XML の例を示す. 既存の WEB アプリケーションを WEB サービ スへと変換するために,プロキシサーバによる 変換を提案し,その支援ツールを開発した.本 支援ツールを使用することで,様々な WEB ア プリケーションを視覚的に理解しやすいかたち で WEB サービスへ変換することが可能となる. これにより,WEB アプリケーションの利用者で も,容易に WEB サービス変換が可能である. 今後の課題として,WEB サービス変換ルール XML に対する型指定の追加,それに対応した支 援ツールの改良,パフォーマンスの向上,および 支援ツールの評価が挙げられる. 参考文献 [1] 湯浅 亮祐,中所 武司,WEB サービス連携の ための WEB ページラッピング技術の提案と評価, 情報処理学会研究報告ソフトウェア工学,2004 [2] 藤原 克哉,中所 武司,玉本 英夫,フォーム 自動記入のためのサービス統合フレームワーク実 現方式,情報処理学会研究報告ソフトウェア工学, 2004 [3] 米持 幸寿,WEB サービス完全解説,翔泳社, 2002 [4] 島本 正,柿木 彰,西本 進,野間 克司,野 上 忍,亀倉 龍,松本 健,福原 信貴,WEB サー ビス完全構築ガイド,日経 BP 社,2001 3−114