JP4049653B2 - Protocol conversion program, protocol conversion method, and protocol conversion apparatus - Google Patents

Protocol conversion program, protocol conversion method, and protocol conversion apparatus Download PDF

Info

Publication number
JP4049653B2
JP4049653B2 JP2002318475A JP2002318475A JP4049653B2 JP 4049653 B2 JP4049653 B2 JP 4049653B2 JP 2002318475 A JP2002318475 A JP 2002318475A JP 2002318475 A JP2002318475 A JP 2002318475A JP 4049653 B2 JP4049653 B2 JP 4049653B2
Authority
JP
Japan
Prior art keywords
html
response message
http
soap
converted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002318475A
Other languages
Japanese (ja)
Other versions
JP2004152145A (en
Inventor
一也 棚橋
厚 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002318475A priority Critical patent/JP4049653B2/en
Publication of JP2004152145A publication Critical patent/JP2004152145A/en
Application granted granted Critical
Publication of JP4049653B2 publication Critical patent/JP4049653B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、HTML(HyperText Markup Language)並びにHTTP(HyperText Transfer Protocol)又はHTTPS(HTTP Security)を利用して構築されたシステムを、効率的にSOAP(Simple Object Access Protocol)化する技術に関する。
【0002】
【従来の技術】
HTTP又はHTTPS(以下「HTTP」という)で接続されたネットワークにおいて、SOAPというプロトコルを用いて、XML(eXtensible Markup Language)形式のデータ交換により、異なるプラットフォームのアプリケーション同士を連携させる技術が実用化されつつある。
【0003】
また、特開2001−157256号公報に記載されるように、HTTPプロトコルのデータを他のプロトコルとの間で変換を行って相互接続する技術も知られている。
【0004】
【特許文献1】
特開2001−157256号公報
【0005】
【発明が解決しようとする課題】
ところで、HTTPを利用して構築されたシステム(以下「既存システム」という)では、ブラウザに各種情報を表示させることを目的として、情報に書式を定義するHTMLが用いられていた。このため、既存システムをSOAP化するためには、XML形式のSOAPメッセージを直接処理可能とすべく、アプリケーションを大幅に改変し、SOAPを実装させる必要があった。また、既存システムの改変にあたっては、そのプログラム言語がSOAPを実現させるためのライブラリ(SOAPライブラリ)を保有していることが前提条件となっていた。
【0006】
既存システムがSOAPライブラリを保有しないプログラム言語で開発されている場合、その資産をSOAP化するためには、大規模なシステム投資を行い、既存システムを全面更改する必要がある。しかし、既存システムの全面更改は、投資対効果の観点から、現実的な選択肢とはなり得なかった。さらに、既存システムを修正する方法では、運用中のアプリケーションを停止させる必要からサービス低下に繋がると共に、修正に伴う信頼性の低下も懸念された。
【0007】
一方、HTMLは情報に形式を定義しているだけであるので、情報に構造を定義してその意味付けを行うXMLにフォーマット変換することは極めて困難であった。
そこで、本発明は以上のような従来の問題点に鑑み、SOAPメッセージとHTTPメッセージとの間のプロトコル変換を工夫することで、既存システムの信頼性を確保しつつ、これを効率的にSOAP化できるようにしたプロトコル変換技術を提供することを目的とする。
【0008】
【課題を解決するための手段】
このため、本発明に係るプロトコル変換技術では、SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する一方、HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、HTTPレスポンスメッセージに係るHTMLをXMLに変換し、HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信することを特徴とする。このとき、かかる機能を実現するプログラムのソースコードを、HTTPリクエストメッセージに係るHTMLのformタグ及びその属性に基づいて、自動生成するようにしてもよい。
【0009】
かかる構成によれば、SOAPリクエストメッセージを受信すると、POSTメソッド又はGETメソッドを用いたHTTP通信により、SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信される。一方、HTTPレスポンスメッセージを受信すると、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、HTTPレスポンスメッセージに係るHTMLがXMLに変換され、HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信される。このため、SOAPメッセージとHTTPメッセージとの間でプロトコル変換が行われることとなり、HTTP又はHTTPSを利用して構築されたシステムを改変又は全面更改しなくとも、該システムをSOAP化することが可能となる。
【0010】
また、SOAPリクエストメッセージをHTTPリクエストメッセージに変換するときには、HTTPリクエストメッセージに係るHTMLのタグ及びその属性を解析して作成した変換規則に基づいて、SOAPリクエストメッセージをHTTPリクエストメッセージに変換することが望ましい。
【0011】
かかる構成によれば、変換規則を適切に作成することで、SOAPリクエストメッセージをHTTPリクエストメッセージに容易かつ迅速に変換することができる。
さらに、HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換するときには、HTTPレスポンスメッセージに係るHTMLと変換定義との間で文字列照合を行い、変換定義において変数化されている部分に該当する文字列をHTMLから抽出して、HTMLをXMLに変換することが望ましい。また、同様に、変換定義において構文化されている部分に該当する文字列をHTMLから抽出して、再帰的に処理を行なうことが望ましい。
【0012】
かかる構成によれば、HTTPレスポンスメッセージに係るHTMLと変換定義との間で文字列照合を行い、変換定義において変数化されている部分に該当する文字列をHTMLから抽出することで、容易かつ迅速にHTMLをXMLに変換することができる。また、同様に、変換定義において構文化されている部分に該当する文字列をHTMLから抽出して、再帰的に処理を行うようにすれば、繰り返し構造が複数階層に展開されているときであっても、1階層構造のものとして処理を行なうことができる。
【0013】
【発明の実施の形態】
以下、添付された図面を参照して本発明を詳述する。
図1は、本発明に係るプロトコル変換技術を具現化した変換装置10を用いて、SOAPメッセージを利用するSOAPクライアント20と、HTTPメッセージを利用する既存システム30と、の間でプロトコル変換を行う構成を示す。なお、変換装置10,SOAPクライアント20及び既存システム30は、夫々、中央処理装置とメモリとを備えたコンピュータから構築され、メモリにロードされたプログラムによりプロトコル変換に係る各種機能が実現される。また、変換装置10,SOAPクライアント20及び既存システム30は、TCP/IP(Transfer Control Protocol/Internet Protocol)ベースのLAN(Local Area Network)又はインターネットなどのネットワーク40を介して相互接続される。
【0014】
変換装置10には、SOAPメッセージとHTTPメッセージとの間のプロトコル変換を実現させるべく、後述する処理により自動生成された変換プログラム12が実行可能に組み込まれる。また、変換装置10には、SOAPメッセージを処理可能にするSOAPライブラリ14と、HTMLをXMLに変換する変換定義が規定されたHTML-XML変換定義16と、が備えられる。
【0015】
ここで、変換プログラム12により、SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する機能,HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能,送信手段及び返信手段がソフトウエア的に実現される。
【0016】
SOAPクライアント20には、SOAPメッセージの送受信及びユーザとのインタフェースを行うクライアントプログラム22と、SOAPライブラリ24と、が備えられる。一方、既存システム30には、HTTPメッセージを利用して、各種サービスを提供するアプリケーション32が実行可能に組み込まれる。
【0017】
なお、変換装置10は、図2に示すように、既存システム30に組み込むようにしてもよい。
次に、HTML-XML変換定義16の作成,変換プログラム12の自動生成及びその組み込みまでの一連の処理について、図3を参照しつつ説明する。
【0018】
ステップ1(図では「S1」と略記する。以下同様)では、図示しないHTTPクライアントのブラウザ機能などを利用して、SOAP化を希望する既存システム30に対するHTTPメッセージの入出力をファイルに格納する。鉄道の経路を探索するサービスを例にとると、既存システム30に対するHTTPリクエストメッセージ(入力)には、図4に示すように、タグ<form>〜</form>に、アプリケーションのURL(Uniform Resource Locator),通信方式(POST又はGET)並びに出発駅及び到着駅などの入力情報が夫々記述される。一方、既存システム30からのHTTPレスポンスメッセージ(出力)には、図5に示すように、タグ<table>〜</table>に、出発駅,到着駅及び路線などが夫々記述される。なお、HTTPレスポンスメッセージにタグ<table>〜</table>が複数あるのは、1回の経路探索で複数の経路が探索されたことを示している。
【0019】
ステップ2では、HTTPレスポンスメッセージを参照して、人手により、図6に示すようなHTML-XML変換定義16を作成する。HTML-XML変換定義16は、変換対象のHTMLのセッションごとに異なる主要情報を変数化し、汎化して表現できる。また、HTMLで表現された表などのように、同一構造を繰り返すものであっても、構文化し、汎化して表現できる。そして、HTMLからXMLに変換するときに、HTMLとHTML-XML変換定義との文字列照合を行い、HTML-XML変換定義で変数化されている部分を抽出し、そこで定義されたタグを用いて出力する。このため、HTML-XML変換定義16では、次のような3種類の制御文字列を用いて、HTMLをXMLに変換する変換定義が規定される。
[制御文字列]
(1)$[value#TagName]
HTTPレスポンスメッセージと照合して、TagNameに相当する文字列を抽出し、<TagName>抽出文字列</tagName>としてXMLに出力する。
(2)$[for#TagName]〜$[end#ForbidedString[#ForbidedString]・・・]
$[for]〜$[end]で囲まれた文字列について、HTTPレスポンスメッセージに対して繰り返し照合する。また、$[for]〜$[end]が入れ子になっているときには、再起的に処理する。このとき、ForbidedStringを設定しておくと、$[for]〜$[end]に$[value#TagName]が記述されているとき、ForbidedStringを含まないように文字列を抽出する。ForbidedStringを設定可能とすることで、$[value#TagName]により文字列を抽出するときに、繰り返し箇所を越えて文字列が抽出されてしまうことを防止できる。
(3)$[value#DoNotOutput]
HTTPレスポンスメッセージと照合して、TagNameに相当する文字列があったとしても、XMLに出力しない。$[value#DoNotOutput]を設定可能とすることで、セッションごとに異なる情報が存在するときであっても、これをXMLに出力しないようにすることができる。
【0020】
ステップ3では、変換装置10に組み込まれる変換プログラム12のソースコードを自動生成する。なお、ソースコード自動生成については、後述する。
ステップ4では、自動生成されたソースコードをコンパイルし、実行モジュールとしての変換プログラム12を生成する。
【0021】
ステップ5では、変換プログラム12を変換装置10に実行可能に組み込む。
図7は、変換プログラム12のソースコードを自動生成するメインルーチンのフローチャートを示す。なお、図7に示すメインルーチン及びここからコールされるサブルーチンにより、SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信するソースコード、及び、HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信するソースコードを自動生成する機能がソフトウエア的に実現される。
【0022】
ステップ11では、SOAPリクエストメッセージをHTTPリクエストメッセージにプロトコル変換するインターフェースを作成するために、HTTPリクエストメッセージの<form>タグを解析したインタフェース定義を作成するサブルーチンをコールする。
【0023】
ステップ12では、変換プログラム12のソースコードを自動生成するサブルーチンをコールする。
図8は、インタフェース定義を作成するサブルーチンのフローチャートを示す。なお、インタフェース定義は、XMLで作成される。
【0024】
ステップ21では、インタフェースの作成に必要な各種情報、例えば、HTTPリクエストメッセージファイル名,出力ファイル名,クラス名,メソッド名,action属性のベースURLを入力する。
【0025】
ステップ22では、XMLヘッダ「<?xml version="1.0"?>」を出力する。
ステップ23では、ルート要素の開始タグ「<interface>」を出力する。
【0026】
ステップ24では、図9に示す変換規則Iに従って、入力されたクラス名及びメソッド名に対応したタグ「<class value="クラス名"/>」及び「<method value="メソッド名"/>」を出力する。
【0027】
ステップ25では、HTTPリクエストメッセージの<form>〜</form>で囲まれた各タグについて、図10に示す変換規則IIに従って、HTMLのタグをXMLのタグに変換した後、これを出力する。
【0028】
ステップ26では、ルート要素の終了タグ「</interface>」を出力する。
図8に示す一連の処理によれば、クラス名として「RouteSearch」、メソッド名として「searchRoute」を入力すると、図4に示すHTTPリクエストメッセージから、図11に示すインタフェース定義が作成される。インタフェース定義では、XMLのタグを利用して、クラス名,メソッド名,アプリケーションのURL,通信方式,入力情報などが夫々定義される。なお、アプリケーションのURLが相対アドレスであれば、action属性のベースURLを用いて絶対アドレスに変換した後、その絶対アドレスがURLとされる。また、作成されたインタフェース定義は、ステップ21で入力された出力ファイル名に、XML文書として保存される。
【0029】
図12は、変換プログラム12のソースコードを自動生成するサブルーチンのフローチャートを示す。
ステップ31では、インタフェース定義を読み込む。
【0030】
ステップ32では、インタフェース定義の<class>タグを参照して、以下の文字列を出力する。

Figure 0004049653
ステップ33では、インタフェース定義の<method>タグを参照して、文字列「public String メソッド名(」を出力する。
【0031】
ステップ34では、インタフェース定義の<element>タグを順次参照して、メソッドの仮引数として、文字列「String エレメント名」を「,」を挟んで列挙した後、文字列「)[」を出力する。なお、同一のname属性をもつelementタグが複数回出力されている場合には、2回目以降に出力されたelementタグに対しては、この処理を行わない。
【0032】
ステップ35では、インタフェース定義の<url>タグを参照して、アプリケーションのURLを定義する文字列「String url = "アプリケーションのURL";」を出力する。
【0033】
ステップ36では、インタフェース定義の<element>タグを参照して、アプリケーションに対してPOST又はGETする文字列を出力する。なお、同一のname属性をもつelementタグが複数回出力されている場合には、2回目以降に出力されたelementタグに対しては、この処理を行わない。
【0034】
ステップ37では、インタフェース定義の<connection>タグからアプリケーションへの通信方式を取得し、アプリケーションのURL並びにPOST又はGETする文字列を引数として、次のようなHTTP通信を行うソースコードを出力する。
【0035】
String ret = httpConnector.get(url, params.toString());
ステップ38では、HTTP通信の結果受信した文字列を解析し、次のようなHTMLをXMLに変換するためのソースコードを出力する。なお、XMLConverterは、HTMLをXMLに変換するクラス、xc.transform()は、HTMLをXMLに変換するクラスXMLConveterのメソッド、html-xml.datは、HTML-XML変換定義16を夫々示す。
【0036】
XMLConverter xc = new XMLConveter("html-xml.dat", ret);
ret = xc.transform();
ステップ39では、変換結果を文字列として返すソースコードを出力する。
【0037】
ステップ40では、メソッド定義及びクラス定義を終了させる「]」を夫々出力する。
図12に示す一連の処理によれば、図13に示すような変換プログラム12のソースコードが自動生成される。ソースコードには、SOAPリクエストメッセージをHTTPリクエストメッセージに変換してHTTP通信を行うコード、HTTPレスポンスメッセージをXMLにフォーマット変換し、これをSOAPレスポンスメッセージとして返却するコードが含まれる。
【0038】
そして、ソースコードをコンパイルして実行モジュールを生成した後、これを変換装置10に実行可能に組み込むことで、SOAPメッセージとHTTPメッセージとの間のプロトコル変換が実行されることとなる。即ち、変換装置10が、SOAPクライアント20からSOAPリクエストメッセージを受信すると、HTTPを利用して、既存システム30に対してHTTPリクエストメッセージを送信する。一方、変換装置10が、既存システム30からHTTPレスポンスメッセージを受信すると、HTML-XML変換定義16を参照してHTMLをXMLに変換した後、SOAPクライアント20に対してSOAPレスポンスメッセージを返信する。
【0039】
図14及び図15は、XMLをHTMLにフォーマット変換する処理のフローチャートを示す。なお、初期状態では、HTML及びHTML-XML変換定義のインデックスは、0に夫々設定される。
【0040】
ステップ41では、XMLヘッダ「<?xml version="1.0"?>」を出力する。
ステップ42では、ルート要素の開始タグ「<return>」を出力する。
【0041】
なお、XMLヘッダ及びルート要素の開始タグは、本ルーチンが最初に実行されたときのみ出力される。
ステップ43では、HTML-XML変換定義の先頭から順次検索し、制御文字列を抽出する。
【0042】
ステップ44では、HTMLのインデックスを、HTML-XML変換定義のインデックスから制御文字列の直前の文字までの文字数分だけ進める。
ステップ45では、抽出された制御文字列に応じた分岐処理を行なう。即ち、制御文字列が$[value]であればステップ46へと進み、制御文字列が$[for]であればステップ51へと進み、制御文字列が抽出できなかったならば処理を終了する。
【0043】
ステップ46では、HTML-XML変換定義において、抽出された文字列と次の制御文字列とで挟まれた文字列(終端文字列)を抽出する。このとき、改行を無視し、空白及びタグを含めた文字列を抽出する。また、次の制御文字列が存在しないときには、抽出された制御文字列の次の文字から最後の文字まで抽出する。
【0044】
ステップ47では、HTMLにおいて、インデックスと終端文字列とで挟まれた文字列を抽出する。このとき、制御文字列$[end]において、その属性としてForbidedStringが設定されているときには、これを含まないように抽出する。
【0045】
ステップ48では、$[value]の属性として、DoNotOutputが設定されているか否かを判定する。そして、DoNotOutputが設定されていればステップ50へと進み(Yes)、DoNotOutputが設定されていなければステップ49へと進む(No)。
【0046】
ステップ49では、$[vaue]の属性として設定されているTagNameを抽出し、ステップ47で抽出された文字列を用いて、「<TagName>文字列</TagName>」を出力する。
【0047】
ステップ50では、HTMLのインデックスを、終端文字列の最初の文字まで進めると共に、HTML-XML変換定義のインデックスを、ステップ43で抽出した制御文字列の次の文字まで進める。その後、ステップ43へと戻る。
【0048】
ステップ51では、HTML-XML変換定義において、$[for]に対応する$[end]を検索する。$[for]〜$[end]が入れ子になっているときには、その中の$[for]及び$[end]の出現回数を計数し、適切な$[end]を検索するようにする。
【0049】
ステップ52では、HTML-XML変換定義において、$[for]と$[end]との間の文字列を抽出する。
ステップ53では、ステップ52で抽出された文字列において、その先頭から最初の制御文字列までの文字列(識別文字列)を抽出する。
【0050】
ステップ54では、HTMLにおいて、インデックス以降に処理すべき識別文字列があるか否かを判定する。そして、識別文字列があればステップ55へと進み(Yes)、識別文字列がなければ$[for]〜$[end]の処理が終了したと判定してステップ59へと進む(No)。
【0051】
ステップ55では、制御文字列$[for]の属性から文字列を抽出し、開始タグ「<文字列>」を出力する。
ステップ56では、HTML-XML変換定義における$[for]〜$[end]内の文字列を処理すべく、ステップ52で抽出した文字列を引数として、本ルーチンを再帰呼び出しする。
【0052】
ステップ57では、制御文字列$[for]の属性から文字列を抽出し、終了タグ「</文字列>」を出力する。
ステップ58では、HTMLのインデックスを、HTML-XML変換定義における$[for]に対応する$[end]の次の文字に相当する位置まで進める。その後、ステップ54へと戻る。
【0053】
ステップ59では、HTML-XML変換定義のインデックスを、$[for]に対応する$[end]の次の文字まで進める。その後、ステップ43へと戻る。
ここで、図5に示すHTTPレスポンスメッセージを例にとって、HTMLをXMLにフォーマット変換する処理を詳述する。なお、フォーマット変換後のXMLは、図16に示すようになる。
【0054】
初期状態では、図6に示すHTML-XML変換定義、及び、図5に示すHTMLのインデックスは、0に夫々設定されている。先ず、XMLヘッダ「<?xml version="1.0"?>」、及び、ルート要素の開始タグ「<return>」が夫々出力される。XMLヘッダ及びルート要素の開始タグが出力されると、HTML-XML変換定義において、制御文字列$[value#title]が抽出され、HTMLのインデックスが進められる。制御文字列が$[value]であるので、HTML-XML変換定義ファイルにおいて、制御文字列$[value#title]と次の制御文字列$[for#keiro]とで挟まれた終端文字列「</title></head><body>」が抽出される。終端文字列が抽出されると、HTMLにおいて、インデックスと終端文字列とで挟まれた文字列「経路探索」が抽出される。制御文字列$[value#title]には、その属性としてDoNotOutputが設定されていないので、制御文字列$[value#title]から文字列「title」が抽出され、これをタグとして、「<title>経路探索</title>」が出力される。その後、HTML及びHTML-XML変換定義のインデックスが夫々進められる。
【0055】
次に、HTML-XML変換定義において、制御文字列$[for#keiro]が抽出され、HTMLのインデックスが進められる。制御文字列が$[for]であるので、HTML-XML変換定義において、$[for#keiro]に対応する$[end#</body>]が検索され、$[for#keiro]と$[end#</body>]とで挟まれた文字列「<h1>経路$[value#DoNotOutput]・・・・・・$[end#</table>#<tr>]</table>」が抽出される。そして、抽出された文字列の先頭から最初の制御文字列までの識別文字列「<h1>経路」が抽出される。識別文字列が抽出されると、HTMLにおいて、インデックス以降に処理すべき識別文字列があるので、開始タグ「<keiro>」が出力される。開始タグが出力されると、抽出された文字列「<h1>経路$[value#DoNotOutput]・・・・・・$[end#</table>#<tr>]</table>」を引数として、再帰呼び出しが行われる。
【0056】
再帰呼び出しが行われた直後では、HTML及びHTML-XML変換定義は、図17に示すようになっている。このとき、同図(B)に示すHTML-XML変換定義では、インデックスが0に設定されている(以下同様)。そして、HTML-XML変換定義において、制御文字列$[value#DoNotOutput]が抽出され、HTMLのインデックスが進められる。制御文字列が$[value]であるので、HTML-XML変換定義において、制御文字列$[value#DoNotOutput]と$[for#line]とで挟まれた終端文字列「</h1><table><tr><th>出発駅<th>到着駅<th>路線」が抽出される。終端文字列が抽出されたら、HTMLにおいて、インデックスと終端文字列とで挟まれた文字列「1」が抽出される。制御文字列$[value#DoNotOutput]には、その属性としてDoNotOutputが設定されているので、文字列「1」を出力せずに、HTML及びHTML-XML変換定義のインデックスが夫々進められる。
【0057】
次に、HTML-XML変換定義において、制御文字列$[for#line]が抽出され、HTMLのインデックスが進められる。制御文字列が$[for]であるので、HTML-XML変換定義において、$[for#line]と$[end#</table>#<tr>]とで挟まれた文字列「<tr><td>$[value#start]<td>$[value#end]<td>$[value#name]」が抽出される。そして、抽出された文字列の先頭から最初の制御文字列までの識別文字列「<tr><td>」が抽出される。識別文字列が抽出されると、HTMLにおいて、インデックス以降に処理すべき識別文字列があるので、開始タグ「<line>」が出力される。開始タグが出力されると、抽出された文字列「<tr><td>$[value#start]<td>$[value#end]<td>$[value#name]」を引数として、再帰呼び出しが行われる。
再帰呼び出しが行われた直後では、HTML及びHTML-XML変換定義は、図18に示すようになっている。そして、HTML-XML変換定義において、制御文字列$[value#start]が抽出され、HTMLのインデックスが進められる。制御文字列が$[value]であるので、HTML-XML変換定義において、制御文字列$[value#start]と$[value#end]とで挟まれた終端文字列「<td>」が抽出される。終端文字列が抽出されたら、HTMLにおいて、インデックスと終端文字列とで挟まれた文字列「新横浜」が抽出される。制御文字列$[value#start]には、その属性としてDoNotOutputが設定されていないので、制御文字列$[value#start]から文字列「start」が抽出され、これをタグとして、「<start>新横浜</start>」が出力される。その後、HTML及びHTML-XML変換定義のインデックスが進められる。HTML-XML変換定義における制御文字列$[value#end]及び$[value#session]に対しても同様な処理が行われ、次のようなタグが出力された後、HTML及びHTML-XML変換定義のインデックスが進められる。
【0058】
<end>東京</end>
<name>JR東海道新幹線</name>
HTML及びHTML-XML変換定義のインデックスが進められた結果、図18(B)に示すHTML-XML変換定義には、インデックス以降に制御文字列がなくなるので、制御文字列$[for#line]に係る再帰呼び出しから抜け出す。そして、制御文字列$[for#line]に係るタグを終了させるべく、終了タグ「</line>」が出力され、HTMLのインデックスが進められる。
【0059】
HTML-XML変換定義のインデックスが進められた結果、図17(B)に示すHTML-XML変換定義には、インデックス以降に制御文字列がなくなるので、制御文字列$[for#keiro]に係る再帰呼び出しから抜け出す。そして、制御文字列$[for#keiro]に係るタグを終了させるべく、終了タグ「</keiro>」が出力され、HTMLのインデックスが進められる。
【0060】
その後、以上説明した処理を続行することで、図19及び図20に示すHTML及びHTML-XML変換定義で再帰呼び出しが行われ、HTMLが、最終的に図16に示すXMLにフォーマット変換される。
【0061】
HTMLをXMLにフォーマット変換するとき、HTML-XML変換定義において入れ子となっている$[for]〜$[end]は、再起呼び出しを行うことで、制御文字列$[value]のみを含む単純な構造とみなすことができる。このため、入れ子が複数階層に展開される構造であっても、容易かつ迅速に、HTMLをXMLにフォーマット変換することができる。
【0062】
以上説明した構成によれば、変換装置10がSOAPメッセージとHTTPメッセージとの間のプロトコル変換を行うので、SOAPクライアント20と既存システム30との間に変換装置10を介装させれば、既存システム30の修正が一切不要となる。このため、既存システム30の信頼性を確保しつつ、既存システムを効率的にSOAP化することができる。
【0063】
(付記1)SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する機能と、HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能と、をコンピュータに実現させるためのプロトコル変換プログラム。
【0064】
(付記2)前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する機能は、HTTPリクエストメッセージに係るHTMLのタグ及びその属性を解析して作成した変換規則に基づいて、SOAPリクエストメッセージをHTTPリクエストメッセージに変換することを特徴とする付記1記載のプロトコル変換プログラム。
【0065】
(付記3)前記HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能は、HTTPレスポンスメッセージに係るHTMLと前記変換定義との間で文字列照合を行い、該変換定義において変数化されている部分に該当する文字列をHTMLから抽出して、HTMLをXMLに変換することを特徴とする付記1記載のプロトコル変換プログラム。
【0066】
(付記4)前記HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能は、HTTPレスポンスメッセージに係るHTMLと前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列をHTMLから抽出して、再帰的に処理を行なうことを特徴とする付記1記載のプロトコル変換プログラム。
【0067】
(付記5)HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能をコンピュータに実現させるためのプロトコル変換プログラム。
【0068】
(付記6)前記HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能は、HTTPレスポンスメッセージに係るHTMLと前記変換定義との間で文字列照合を行い、該変換定義において変数化されている部分に該当する文字列をHTMLから抽出して、HTMLをXMLに変換することを特徴とする付記5記載のプロトコル変換プログラム。
【0069】
(付記7)前記HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能は、HTTPレスポンスメッセージに係るHTMLと前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列をHTMLから抽出して、再帰的に処理を行なうことを特徴とする付記5記載のプロトコル変換プログラム。
【0070】
(付記8)HTTPリクエストメッセージに係るHTMLのformタグ及びその属性に基づいて、SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信するソースコードと、HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信するソースコードと、を自動生成する機能をコンピュータに実現させるためのプロトコル変換プログラム。
【0071】
(付記9)SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する一方、HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信することを特徴とするプロトコル変換方法。
【0072】
(付記10)HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義と、SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する送信手段と、HTTPレスポンスメッセージを受信したときに、前記変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する返信手段と、を含んで構成されたことを特徴とするプロトコル変換装置。
【0073】
【発明の効果】
以上説明したように、本発明に係るプロトコル変換技術によれば、SOAPメッセージとHTTPメッセージとの間でプロトコル変換が行われることとなり、HTTP又はHTTPSを利用して構築されたシステムを改変又は全面更改しなくとも、該システムを効率的にSOAP化することができる。また、システムの修正を伴わないことから、その信頼性を確保することもできる。
【図面の簡単な説明】
【図1】 本発明を具現化した変換装置を用いて、SOAPメッセージとHTTPメッセージとの間でプロトコル変換を行う実施形態を示し、(A)は接続図、(B)は構成図
【図2】 同上の他の実施形態を示し、(A)は接続図、(B)は構成図
【図3】 HTML-XML変換定義及び変換プログラムの生成手順の説明図
【図4】 既存システムに入力されるHTTPレクエストメッセージの説明図
【図5】 既存システムから出力されるHTTPレスポンスメッセージの説明図
【図6】 XTML-XML変換定義の説明図
【図7】 変換プログラムのソースコードを自動生成するメインルーチンのフローチャート
【図8】 インタフェース定義を作成するサブルーチンのフローチャート
【図9】 同上で使用される変換規則Iの説明図
【図10】 同上で使用される変換規則IIの説明図
【図11】 インタフェース定義の説明図
【図12】 ソースコードを自動生成するサブルーチンのフローチャート
【図13】 変換プログラムのソースコードの説明図
【図14】 HTMLをXMLに変換する処理を示すフローチャート
【図15】 HTMLをXMLに変換する処理を示すフローチャート
【図16】 XMLへの変換結果の説明図
【図17】 再帰呼び出しが最初に行われたときの状態を示し、(A)はHTMLの説明図、(B)はHTML-XML変換定義の説明図
【図18】 再帰呼び出しが2回目に行われたときの状態を示し、(A)はHTMLの説明図、(B)はHTML-XML変換定義の説明図
【図19】 再帰呼び出しが3回目に行われたときの状態を示し、(A)はHTMLの説明図、(B)はHTML-XML変換定義の説明図
【図20】 再帰呼び出しが4回目に行われたときの状態を示し、(A)はHTMLの説明図、(B)はHTML-XML変換定義の説明図
【符号の説明】
10 変換装置
12 変換プログラム
16 HTML-XML変換定義[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for efficiently converting a system constructed using HTML (HyperText Markup Language) and HTTP (HyperText Transfer Protocol) or HTTPS (HTTP Security) into SOAP (Simple Object Access Protocol).
[0002]
[Prior art]
In a network connected by HTTP or HTTPS (hereinafter referred to as “HTTP”), technology for linking applications of different platforms is being put into practical use by exchanging data in XML (eXtensible Markup Language) format using a protocol called SOAP. is there.
[0003]
In addition, as described in Japanese Patent Application Laid-Open No. 2001-157256, a technique is also known in which HTTP protocol data is converted between other protocols and interconnected.
[0004]
[Patent Document 1]
JP 2001-157256 A
[0005]
[Problems to be solved by the invention]
By the way, in a system constructed using HTTP (hereinafter referred to as “existing system”), HTML that defines a format for information is used for the purpose of displaying various information in a browser. For this reason, in order to make an existing system SOAP, it was necessary to significantly modify the application and implement SOAP so that the SOAP message in XML format could be processed directly. In addition, when modifying an existing system, it is a prerequisite that the programming language has a library (SOAP library) for realizing SOAP.
[0006]
If an existing system is developed in a programming language that does not have a SOAP library, to make that asset SOAP, it is necessary to make a large-scale investment in the system and to completely update the existing system. However, the complete renewal of the existing system could not be a realistic option from the viewpoint of return on investment. Furthermore, in the method of modifying the existing system, it is necessary to stop the application in operation, leading to a decrease in service, and there is a concern about a decrease in reliability associated with the modification.
[0007]
On the other hand, since HTML only defines a format for information, it has been extremely difficult to convert the format to XML that defines the structure of information and assigns its meaning.
Therefore, in view of the conventional problems as described above, the present invention can be efficiently converted to SOAP while ensuring the reliability of existing systems by devising protocol conversion between SOAP messages and HTTP messages. An object of the present invention is to provide a protocol conversion technique that can be performed.
[0008]
[Means for Solving the Problems]
For this reason, in the protocol conversion technology according to the present invention, when a SOAP request message is received, the SOAP request message is converted into an HTTP request message by HTTP communication using the POST method or the GET method, while the HTTP response message is transmitted. When the message is received, refer to the conversion definition in which the main information of HTML and the repetition structure are converted into variable and syntax, respectively, convert HTML related to HTTP response message to XML, and convert HTTP response message to SOAP response message And reply. At this time, the source code of the program that realizes such a function may be automatically generated based on the HTML form tag and its attributes related to the HTTP request message.
[0009]
According to such a configuration, when a SOAP request message is received, the SOAP request message is converted into an HTTP request message and transmitted by HTTP communication using the POST method or the GET method. On the other hand, when an HTTP response message is received, the HTML associated with the HTTP response message is converted to XML by referring to the conversion definitions in which the main information and repetition structure of HTML are converted into variables and syntaxed, and the HTTP response message is converted into a SOAP response message. It is converted to and sent back. For this reason, protocol conversion is performed between the SOAP message and the HTTP message, and it is possible to make the system SOAP without modifying or completely renewing the system constructed using HTTP or HTTPS. Become.
[0010]
Also, when converting a SOAP request message into an HTTP request message, it is desirable to convert the SOAP request message into an HTTP request message based on a conversion rule created by analyzing the HTML tag and its attributes related to the HTTP request message. .
[0011]
According to such a configuration, a SOAP request message can be easily and quickly converted into an HTTP request message by appropriately creating a conversion rule.
Furthermore, when converting an HTTP response message to a SOAP response message, string matching is performed between the HTML associated with the HTTP response message and the conversion definition, and the character string corresponding to the variableized part in the conversion definition is converted from HTML. It is desirable to extract and convert HTML to XML. Similarly, it is desirable that a character string corresponding to a syntactic part in the conversion definition is extracted from HTML and processed recursively.
[0012]
According to such a configuration, character string matching is performed between the HTML related to the HTTP response message and the conversion definition, and the character string corresponding to the variableized part in the conversion definition is extracted from the HTML. Can convert HTML to XML. Similarly, if a string corresponding to the syntactic part in the conversion definition is extracted from HTML and processed recursively, the repeated structure is expanded to multiple levels. However, the processing can be performed as a one-layer structure.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 shows a configuration for performing protocol conversion between a SOAP client 20 that uses a SOAP message and an existing system 30 that uses an HTTP message, using a conversion device 10 that embodies the protocol conversion technique according to the present invention. Indicates. The conversion device 10, the SOAP client 20, and the existing system 30 are each constructed from a computer that includes a central processing unit and a memory, and various functions related to protocol conversion are realized by programs loaded in the memory. The conversion device 10, the SOAP client 20, and the existing system 30 are interconnected via a network 40 such as a LAN (Local Area Network) based on TCP / IP (Transfer Control Protocol / Internet Protocol) or the Internet.
[0014]
In the conversion device 10, in order to realize protocol conversion between the SOAP message and the HTTP message, a conversion program 12 automatically generated by processing described later is incorporated in an executable manner. In addition, the conversion apparatus 10 includes a SOAP library 14 that enables processing of a SOAP message, and an HTML-XML conversion definition 16 that defines a conversion definition for converting HTML into XML.
[0015]
Here, the conversion program 12 realizes a software function that converts a SOAP request message into an HTTP request message and transmits it, a function that converts an HTTP response message into a SOAP response message and sends it back, a transmission unit, and a reply unit. The
[0016]
The SOAP client 20 includes a client program 22 that performs transmission / reception of SOAP messages and an interface with a user, and a SOAP library 24. On the other hand, an application 32 that provides various services is incorporated into the existing system 30 using HTTP messages.
[0017]
The conversion device 10 may be incorporated into the existing system 30 as shown in FIG.
Next, a series of processes from creation of the HTML-XML conversion definition 16, automatic generation of the conversion program 12, and incorporation thereof will be described with reference to FIG.
[0018]
In step 1 (abbreviated as “S1” in the figure, the same applies hereinafter), the input / output of the HTTP message to the existing system 30 that is desired to be SOAP is stored in a file by using a browser function of an HTTP client (not shown). As an example of a service for searching for a railroad route, an HTTP request message (input) to the existing system 30 includes a tag as shown in FIG. <form> ~ </ form> describes application URL (Uniform Resource Locator), communication method (POST or GET), and input information such as departure station and arrival station. On the other hand, in the HTTP response message (output) from the existing system 30, as shown in FIG. <table> ~ </ table> describes the departure station, arrival station, route, and the like. In addition, tag in HTTP response message <table> ~ A plurality of </ table> indicates that a plurality of routes have been searched in one route search.
[0019]
In step 2, referring to the HTTP response message, an HTML-XML conversion definition 16 as shown in FIG. 6 is created manually. The HTML-XML conversion definition 16 can change and generalize different main information for each conversion target HTML session. Moreover, even if the same structure is repeated, such as a table expressed in HTML, it can be syntactically and generalized. Then, when converting from HTML to XML, string matching between HTML and the HTML-XML conversion definition is performed, and the part that is variable in the HTML-XML conversion definition is extracted, and the tag defined there is used. Output. For this reason, the HTML-XML conversion definition 16 defines a conversion definition for converting HTML to XML using the following three types of control character strings.
[Control string]
(1) $ [value # TagName]
Check the HTTP response message, extract the string corresponding to TagName, <TagName> extracted character string Output to XML as </ tagName>.
(2) $ [for # TagName] to $ [end # ForbidedString [#ForbidedString] ...]
The character string enclosed between $ [for] and $ [end] is repeatedly checked against the HTTP response message. When $ [for] to $ [end] are nested, it is processed recursively. At this time, if ForbidedString is set, when $ [value # TagName] is described in $ [for] to $ [end], the character string is extracted so as not to include ForbidedString. By enabling setting of ForbidedString, it is possible to prevent the character string from being extracted beyond the repeated portion when extracting the character string by $ [value # TagName].
(3) $ [value # DoNotOutput]
Even if there is a character string corresponding to TagName compared with HTTP response message, it is not output to XML. By making $ [value # DoNotOutput] configurable, even if different information exists for each session, this can be prevented from being output to XML.
[0020]
In step 3, the source code of the conversion program 12 incorporated in the conversion device 10 is automatically generated. The automatic source code generation will be described later.
In step 4, the automatically generated source code is compiled to generate a conversion program 12 as an execution module.
[0021]
In step 5, the conversion program 12 is incorporated into the conversion device 10 so as to be executable.
FIG. 7 shows a flowchart of a main routine for automatically generating the source code of the conversion program 12. Note that the source code for converting the SOAP request message into an HTTP request message and transmitting it by the main routine shown in FIG. 7 and the subroutine called from here, and the source code for converting the HTTP response message into a SOAP response message and sending it back The function of automatically generating is realized by software.
[0022]
In step 11, in order to create an interface for converting a SOAP request message into an HTTP request message, Call the subroutine that creates the interface definition that analyzed the <form> tag.
[0023]
In step 12, a subroutine for automatically generating the source code of the conversion program 12 is called.
FIG. 8 shows a flowchart of a subroutine for creating an interface definition. The interface definition is created in XML.
[0024]
In step 21, various information necessary for creating an interface, for example, an HTTP request message file name, an output file name, a class name, a method name, and a base URL for an action attribute are input.
[0025]
In step 22, the XML header “ <? xml version = "1.0"?>"is output.
In step 23, the start tag “ <interface>"is output.
[0026]
In step 24, in accordance with the conversion rule I shown in FIG. <class value = "class name"/>"and"<method value = "method name"/>"is output.
[0027]
In step 25, the HTTP request message <form> ~ For each tag enclosed in </ form>, an HTML tag is converted to an XML tag according to the conversion rule II shown in FIG.
[0028]
In step 26, the end tag “ </ interface>"is output.
According to the series of processes shown in FIG. 8, when “RouteSearch” is input as the class name and “searchRoute” is input as the method name, the interface definition shown in FIG. 11 is created from the HTTP request message shown in FIG. In the interface definition, class names, method names, application URLs, communication methods, input information, etc. are defined using XML tags. If the URL of the application is a relative address, it is converted to an absolute address using the base URL of the action attribute, and then the absolute address is used as the URL. The created interface definition is saved as an XML document in the output file name input in step 21.
[0029]
FIG. 12 shows a flowchart of a subroutine for automatically generating the source code of the conversion program 12.
In step 31, the interface definition is read.
[0030]
In step 32, the interface definition Refer to <class> tag and output the following string.
Figure 0004049653
In step 33, the interface definition Refer to the <method> tag and output the string "public String method name (".
[0031]
In step 34, the interface definition Refer to the <element> tag sequentially, enumerate the character string “String element name” with “,” as a formal argument of the method, and then output the character string “) [”. When element tags having the same name attribute are output a plurality of times, this process is not performed for the element tags output after the second time.
[0032]
In step 35, the interface definition Referring to the <url> tag, the character string "String url =" application URL ";" that defines the application URL is output.
[0033]
In step 36, the interface definition Refer to the <element> tag and output a character string for POST or GET to the application. When element tags having the same name attribute are output a plurality of times, this process is not performed for the element tags output after the second time.
[0034]
In step 37, the interface definition Get the communication method from the <connection> tag to the application, and output the source code that performs the following HTTP communication with the URL of the application and the character string to be POST or GET as arguments.
[0035]
String ret = httpConnector.get (url, params.toString ());
In step 38, the character string received as a result of the HTTP communication is analyzed, and the following source code for converting HTML into XML is output. XMLConverter indicates a class for converting HTML to XML, xc.transform () indicates a method of a class XMLConveter for converting HTML to XML, and html-xml.dat indicates an HTML-XML conversion definition 16.
[0036]
XMLConverter xc = new XMLConveter ("html-xml.dat", ret);
ret = xc.transform ();
In step 39, a source code that returns the conversion result as a character string is output.
[0037]
In step 40, “]” for ending the method definition and the class definition is output.
According to the series of processes shown in FIG. 12, the source code of the conversion program 12 as shown in FIG. 13 is automatically generated. The source code includes a code that converts a SOAP request message into an HTTP request message and performs HTTP communication, and a code that converts the HTTP response message into XML and returns it as a SOAP response message.
[0038]
And after compiling a source code and producing | generating an execution module, incorporating this in the converter 10 so that execution is possible, protocol conversion between a SOAP message and an HTTP message will be performed. That is, when the conversion apparatus 10 receives a SOAP request message from the SOAP client 20, the conversion apparatus 10 transmits an HTTP request message to the existing system 30 using HTTP. On the other hand, when the conversion apparatus 10 receives an HTTP response message from the existing system 30, the conversion apparatus 10 refers to the HTML-XML conversion definition 16, converts HTML to XML, and then returns a SOAP response message to the SOAP client 20.
[0039]
14 and 15 show flowcharts of processing for converting the format of XML into HTML. In the initial state, the indexes of the HTML and HTML-XML conversion definitions are set to 0, respectively.
[0040]
In step 41, the XML header “ <? xml version = "1.0"?>"is output.
In step 42, the root element start tag “ <return>"is output.
[0041]
Note that the XML header and the start tag of the root element are output only when this routine is executed for the first time.
In step 43, the control character string is extracted by sequentially searching from the head of the HTML-XML conversion definition.
[0042]
In step 44, the HTML index is advanced by the number of characters from the index of the HTML-XML conversion definition to the character immediately before the control character string.
In step 45, branch processing is performed according to the extracted control character string. That is, if the control character string is $ [value], the process proceeds to step 46. If the control character string is $ [for], the process proceeds to step 51. If the control character string cannot be extracted, the process ends. .
[0043]
In step 46, in the HTML-XML conversion definition, a character string (terminal character string) sandwiched between the extracted character string and the next control character string is extracted. At this time, the line feed is ignored and a character string including a space and a tag is extracted. When the next control character string does not exist, the next character to the last character of the extracted control character string are extracted.
[0044]
In step 47, a character string sandwiched between the index and the terminal character string is extracted in HTML. At this time, if ForbidedString is set as the attribute in the control character string $ [end], it is extracted so as not to include it.
[0045]
In step 48, it is determined whether DoNotOutput is set as an attribute of $ [value]. If DoNotOutput is set, the process proceeds to step 50 (Yes), and if DoNotOutput is not set, the process proceeds to step 49 (No).
[0046]
In step 49, TagName set as the attribute of $ [vaue] is extracted, and using the character string extracted in step 47, “ <TagName> string </ TagName>"is output.
[0047]
In step 50, the HTML index is advanced to the first character of the terminal character string, and the HTML-XML conversion definition index is advanced to the next character of the control character string extracted in step 43. Thereafter, the process returns to step 43.
[0048]
In step 51, $ [end] corresponding to $ [for] is searched in the HTML-XML conversion definition. When $ [for] to $ [end] are nested, the number of occurrences of $ [for] and $ [end] is counted, and an appropriate $ [end] is searched.
[0049]
In step 52, a character string between $ [for] and $ [end] is extracted in the HTML-XML conversion definition.
In step 53, the character string (identification character string) from the head to the first control character string is extracted from the character string extracted in step 52.
[0050]
In step 54, it is determined whether or not there is an identification character string to be processed after the index in HTML. If there is an identification character string, the process proceeds to step 55 (Yes), and if there is no identification character string, it is determined that the processing of $ [for] to $ [end] is completed, and the process proceeds to step 59 (No).
[0051]
In step 55, the character string is extracted from the attribute of the control character string $ [for], and the start tag “ <String> is output.
In step 56, this routine is recursively called with the character string extracted in step 52 as an argument to process the character string in $ [for] to $ [end] in the HTML-XML conversion definition.
[0052]
In step 57, the character string is extracted from the attribute of the control character string $ [for], and the end tag “ </ String>"is output.
In step 58, the HTML index is advanced to a position corresponding to the character next to $ [end] corresponding to $ [for] in the HTML-XML conversion definition. Thereafter, the process returns to step 54.
[0053]
In step 59, the index of the HTML-XML conversion definition is advanced to the character next to $ [end] corresponding to $ [for]. Thereafter, the process returns to step 43.
Here, taking the HTTP response message shown in FIG. 5 as an example, the process of converting the format of HTML into XML will be described in detail. The XML after format conversion is as shown in FIG.
[0054]
In the initial state, the HTML-XML conversion definition shown in FIG. 6 and the HTML index shown in FIG. 5 are set to 0, respectively. First, the XML header “ <? xml version = "1.0"?>"and the root element start tag"<return>"is output respectively. When the XML header and the start tag of the root element are output, the control character string $ [value # title] is extracted in the HTML-XML conversion definition, and the HTML index is advanced. Since the control character string is $ [value], in the HTML-XML conversion definition file, the end character string “[## iro]” sandwiched between the control character string $ [value # title] and the next control character string $ [for # keiro] </ title></head><body> ”is extracted. When the terminal character string is extracted, a character string “route search” sandwiched between the index and the terminal character string is extracted in HTML. Since the control string $ [value # title] does not have DoNotOutput as its attribute, the string “title” is extracted from the control string $ [value # title], and this is used as a tag. <title> Route search </ title>"is output. Thereafter, the indexes of HTML and HTML-XML conversion definitions are advanced respectively.
[0055]
Next, in the HTML-XML conversion definition, the control character string $ [for # keiro] is extracted, and the HTML index is advanced. Since the control character string is $ [for], $ [end # corresponding to $ [for # keiro] in the HTML-XML conversion definition </ body>], $ [for # keiro] and $ [end # </ body>] <h1> Path $ [value # DoNotOutput] ... $ [end # </ table>#<tr>]</table> ”is extracted. Then, the identification character string “from the beginning of the extracted character string to the first control character string” <h1> path ”is extracted. When the identification string is extracted, there is an identification string to be processed after the index in HTML. <keiro>"is output. When the start tag is output, the extracted string “ <h1> Path $ [value # DoNotOutput] ... $ [end # </ table>#<tr>]</table>"is used as an argument to make a recursive call.
[0056]
Immediately after the recursive call is made, the HTML and HTML-XML conversion definition is as shown in FIG. At this time, the index is set to 0 in the HTML-XML conversion definition shown in FIG. Then, in the HTML-XML conversion definition, the control character string $ [value # DoNotOutput] is extracted, and the HTML index is advanced. Since the control character string is $ [value], in the HTML-XML conversion definition, the terminal character string “[] # for # line] sandwiched between the control character strings $ [value # DoNotOutput] and $ [for # line] </ h1><table><tr><th> Departure station <th> Arrival station <th> route "is extracted. When the end character string is extracted, the character string “1” sandwiched between the index and the end character string is extracted in HTML. Since the control character string $ [value # DoNotOutput] has DoNotOutput as its attribute, the index of HTML and HTML-XML conversion definition is advanced without outputting the character string “1”.
[0057]
Next, in the HTML-XML conversion definition, the control character string $ [for # line] is extracted, and the HTML index is advanced. Since the control string is $ [for], in the HTML-XML conversion definition, $ [for # line] and $ [end # </ table>#<tr>] between the character string “ <tr><td> $ [value # start] <td> $ [value # end] <td> $ [value # name] "is extracted. Then, the identification character string “from the beginning of the extracted character string to the first control character string” <tr><td> ”is extracted. When the identification string is extracted, there is an identification string to be processed after the index in HTML. <line>"is output. When the start tag is output, the extracted string “ <tr><td> $ [value # start] <td> $ [value # end] <td> $ [value # name] "is used as an argument to make a recursive call.
Immediately after the recursive call is made, the HTML and HTML-XML conversion definition is as shown in FIG. Then, in the HTML-XML conversion definition, the control character string $ [value # start] is extracted, and the HTML index is advanced. Since the control character string is $ [value], in the HTML-XML conversion definition, the end character string "[[##]] and the end character string" $ [value # end] "<td> ”is extracted. When the terminal character string is extracted, the character string “Shin-Yokohama” sandwiched between the index and the terminal character string is extracted in HTML. Since the control string $ [value # start] does not have DoNotOutput as its attribute, the string “start” is extracted from the control string $ [value # start], and this is used as a tag. <start> Shin-Yokohama </ start> ”is output. After that, the index of HTML and HTML-XML conversion definition is advanced. The same processing is performed for the control strings $ [value # end] and $ [value # session] in the HTML-XML conversion definition, and after the following tag is output, HTML and HTML-XML conversion The definition index is advanced.
[0058]
<end> Tokyo </ end>
<name> JR Tokaido Shinkansen </ name>
As a result of the index of the HTML and HTML-XML conversion definition being advanced, the HTML-XML conversion definition shown in FIG. 18B has no control character string after the index, so the control character string $ [for # line] Get out of the recursive call. Then, in order to end the tag related to the control character string $ [for # line], the end tag “ </ line>"is output and the HTML index is advanced.
[0059]
As a result of the index of the HTML-XML conversion definition being advanced, the HTML-XML conversion definition shown in FIG. 17B has no control character string after the index, so recursion related to the control character string $ [for # keiro]. Get out of the call. Then, in order to end the tag related to the control character string $ [for # keiro], the end tag “ </ keiro>"is output, and the HTML index is advanced.
[0060]
Thereafter, by continuing the processing described above, a recursive call is made with the HTML and HTML-XML conversion definition shown in FIGS. 19 and 20, and the format of the HTML is finally converted to XML shown in FIG.
[0061]
When converting HTML to XML format, $ [for] to $ [end] nested in the HTML-XML conversion definition is a simple call that includes only the control string $ [value] by performing a recall call. It can be regarded as a structure. For this reason, even if the nesting structure is developed in a plurality of hierarchies, the format of HTML can be converted to XML easily and quickly.
[0062]
According to the configuration described above, the conversion device 10 performs protocol conversion between the SOAP message and the HTTP message. Therefore, if the conversion device 10 is interposed between the SOAP client 20 and the existing system 30, the existing system 30 modifications are no longer necessary. For this reason, it is possible to efficiently make the existing system SOAP while ensuring the reliability of the existing system 30.
[0063]
(Supplementary note 1) When a SOAP request message is received, a function for converting the SOAP request message into an HTTP request message by HTTP communication using a POST method or a GET method, and an HTTP response message , Refer to the conversion definition in which the main information and repetition structure of HTML are converted into variables and syntax, respectively, convert the HTML related to the HTTP response message into XML, convert the HTTP response message into a SOAP response message, and send it back Protocol conversion program for realizing functions and functions on a computer.
[0064]
(Supplementary note 2) The function to convert the SOAP request message into an HTTP request message and send it is based on the conversion rule created by analyzing the HTML tag and its attributes related to the HTTP request message. The protocol conversion program according to appendix 1, which is converted into a message.
[0065]
(Supplementary Note 3) The function of converting the HTTP response message into a SOAP response message and sending it back is a character string collation between the HTML associated with the HTTP response message and the conversion definition, and is variableized in the conversion definition The protocol conversion program according to appendix 1, wherein a character string corresponding to the part is extracted from HTML and HTML is converted to XML.
[0066]
(Supplementary Note 4) The function of converting the HTTP response message into a SOAP response message and sending it back is a character string collation between the HTML associated with the HTTP response message and the conversion definition, and is syntaxed in the conversion definition The protocol conversion program according to appendix 1, wherein a character string corresponding to the part is extracted from HTML and processed recursively.
[0067]
(Supplementary Note 5) When an HTTP response message is received, the HTML related information of the HTTP response message is converted into XML by referring to conversion definitions in which the main information and the repetition structure of HTML are converted into variables and syntaxed, respectively, and the HTTP A protocol conversion program that allows a computer to realize the function of converting a response message into a SOAP response message and sending it back.
[0068]
(Supplementary Note 6) The function of converting the HTTP response message into a SOAP response message and returning the result performs character string matching between the HTML associated with the HTTP response message and the conversion definition, and is variableized in the conversion definition 6. The protocol conversion program according to appendix 5, wherein a character string corresponding to the part is extracted from HTML and HTML is converted to XML.
[0069]
(Supplementary note 7) The function of converting the HTTP response message into a SOAP response message and sending it back is a character string collation between the HTML associated with the HTTP response message and the conversion definition, and is syntaxed in the conversion definition 6. The protocol conversion program according to appendix 5, wherein a character string corresponding to the part is extracted from HTML and processed recursively.
[0070]
(Supplementary Note 8) When a SOAP request message is received based on the HTML form tag and its attributes related to the HTTP request message, the SOAP request message is converted into an HTTP request message by HTTP communication using the POST method or the GET method. When the source code to be converted and sent and the HTTP response message are received, refer to the conversion definition in which the main information and repetition structure of HTML are converted into variables and syntaxed, and the HTML related to the HTTP response message is converted to XML A protocol conversion program for causing a computer to realize a function of automatically generating a source code that converts and returns the HTTP response message converted into a SOAP response message.
[0071]
(Supplementary note 9) When a SOAP request message is received, the SOAP request message is converted into an HTTP request message and transmitted by HTTP communication using the POST method or the GET method. On the other hand, when an HTTP response message is received, Refer to conversion definitions in which the main information and repetition structure of HTML are converted into variables and syntax, respectively, convert HTML related to the HTTP response message into XML, convert the HTTP response message into a SOAP response message, and send it back A protocol conversion method characterized by the above.
[0072]
(Supplementary Note 10) When a SOAP definition message is received and a transformation definition in which main information and repetition structure of HTML are converted into variables and syntax, and a SOAP request message is received, the SOAP request message is converted to HTTP by HTTP communication using a POST method or a GET method. Sending means for converting to a request message and transmitting, when receiving an HTTP response message, refer to the conversion definition, convert HTML related to the HTTP response message to XML, and convert the HTTP response message to a SOAP response message A protocol conversion device characterized by comprising: a reply means for converting to a reply.
[0073]
【The invention's effect】
As described above, according to the protocol conversion technique according to the present invention, protocol conversion is performed between a SOAP message and an HTTP message, and a system constructed using HTTP or HTTPS is modified or completely renewed. Even if it is not, the system can be made SOAP efficiently. In addition, since the system is not modified, the reliability can be ensured.
[Brief description of the drawings]
FIG. 1 shows an embodiment in which protocol conversion is performed between a SOAP message and an HTTP message using a conversion device embodying the present invention, (A) is a connection diagram, and (B) is a configuration diagram.
FIG. 2 shows another embodiment of the present invention, (A) is a connection diagram, and (B) is a configuration diagram.
FIG. 3 is an explanatory diagram of a procedure for generating an HTML-XML conversion definition and conversion program
FIG. 4 is an explanatory diagram of an HTTP request message input to an existing system
FIG. 5 is an explanatory diagram of an HTTP response message output from an existing system.
[Figure 6] Explanatory drawing of XTML-XML transformation definition
FIG. 7 is a flowchart of a main routine for automatically generating the source code of the conversion program.
FIG. 8 is a flowchart of a subroutine for creating an interface definition.
FIG. 9 is an explanatory diagram of conversion rule I used in the above embodiment
FIG. 10 is an explanatory diagram of the conversion rule II used in the above.
FIG. 11 is an explanatory diagram of interface definition.
FIG. 12 is a flowchart of a subroutine for automatically generating source code.
FIG. 13 is an explanatory diagram of source code of a conversion program
FIG. 14 is a flowchart showing processing for converting HTML into XML.
FIG. 15 is a flowchart showing processing for converting HTML into XML.
FIG. 16 is an explanatory diagram of the result of conversion to XML
FIG. 17 shows a state when a recursive call is first made, (A) is an explanatory diagram of HTML, and (B) is an explanatory diagram of an HTML-XML conversion definition.
FIG. 18 shows a state when a recursive call is made for the second time, (A) is an explanatory diagram of HTML, and (B) is an explanatory diagram of an HTML-XML conversion definition.
FIG. 19 shows the state when a recursive call is made for the third time, (A) is an explanatory diagram of HTML, and (B) is an explanatory diagram of an HTML-XML conversion definition
FIG. 20 shows a state when a recursive call is made for the fourth time, (A) is an explanatory diagram of HTML, and (B) is an explanatory diagram of an HTML-XML conversion definition.
[Explanation of symbols]
10 Conversion device
12 Conversion program
16 HTML-XML conversion definition

Claims (5)

SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する機能と、
HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能と、
をコンピュータに実現させるためのプロトコル変換プログラムであって、
前記 HTTP レスポンスメッセージを SOAP レスポンスメッセージに変換して返信する機能は、 HTTP レスポンスメッセージに係る HTML と前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列を HTML から抽出して、再帰的に処理を行なうことを特徴とするプロトコル変換プログラム。
A function of converting the SOAP request message into an HTTP request message by HTTP communication using the POST method or the GET method when the SOAP request message is received;
When receiving the HTTP response message, refer to the conversion definition in which the main information and the repetition structure of HTML are converted into variables and syntax, respectively, and the HTML related to the HTTP response message is converted to XML, and the HTTP response message is converted to SOAP A function that returns a response message,
A protocol conversion program for realizing the to the computer,
The function of converting the HTTP response message into a SOAP response message and sending it back corresponds to the part that is syntactically defined in the conversion definition by performing character string matching between the HTML associated with the HTTP response message and the conversion definition. A protocol conversion program that extracts a character string from HTML and recursively processes it.
HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する機能をコンピュータに実現させるためのプロトコル変換プログラムであって、
前記 HTTP レスポンスメッセージを SOAP レスポンスメッセージに変換するときに、 HTTP レスポンスメッセージに係る HTML と前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列を HTML から抽出して、再帰的に処理を行なうことを特徴とするプロトコル変換プログラム。
When receiving the HTTP response message, refer to the conversion definition in which the main information and the repetition structure of HTML are converted into variables and syntax, respectively, and the HTML related to the HTTP response message is converted to XML, and the HTTP response message is converted to SOAP A protocol conversion program for causing a computer to convert a response message and send it back,
When the HTTP response message is converted into a SOAP response message , character string matching is performed between the HTML related to the HTTP response message and the conversion definition, and the character string corresponding to the syntactic part in the conversion definition is A protocol conversion program that is extracted from HTML and recursively processed.
HTTPリクエストメッセージに係るHTMLのformタグ及びその属性に基づいて、SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信するソースコードと、HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信するソースコードと、を自動生成する機能
をコンピュータに実現させるためのプロトコル変換プログラムであって、
前記 HTTP レスポンスメッセージを SOAP レスポンスメッセージに変換するときに、 HTTP レスポンスメッセージに係る HTML と前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列を HTML から抽出して、再帰的に処理を行なうことを特徴とするプロトコル変換プログラム。
When a SOAP request message is received based on the HTML form tag and its attributes related to the HTTP request message, the SOAP request message is converted into an HTTP request message and transmitted by HTTP communication using the POST method or GET method. When the source code and the HTTP response message are received, the HTML information related to the HTTP response message is converted to XML by referring to the conversion definitions in which the main information and the repetition structure of HTML are converted into variables and syntaxed, respectively, A protocol conversion program for causing a computer to realize a function of automatically generating a source code for converting an HTTP response message into a SOAP response message and sending it back,
When the HTTP response message is converted into a SOAP response message , character string matching is performed between the HTML related to the HTTP response message and the conversion definition, and the character string corresponding to the syntactic part in the conversion definition is A protocol conversion program that is extracted from HTML and recursively processed.
コンピュータが、
SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する一方、
HTTPレスポンスメッセージを受信したときに、HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する
ことを特徴とするプロトコル変換方法であって、
前記コンピュータが、前記 HTTP レスポンスメッセージを SOAP レスポンスメッセージに変換するときに、 HTTP レスポンスメッセージに係る HTML と前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列を HTML から抽出して、再帰的に処理を行なうことを特徴とするプロトコル変換方法。
Computer
When a SOAP request message is received, the SOAP request message is converted into an HTTP request message and transmitted by HTTP communication using the POST method or the GET method.
When receiving the HTTP response message, refer to the conversion definition in which the main information and the repetition structure of HTML are converted into variable and syntax, respectively, and the HTML related to the HTTP response message is converted to XML, and the HTTP response message is converted to SOAP A protocol conversion method characterized in that a response message is converted and returned ,
When the computer converts the HTTP response message to a SOAP response message, the computer performs a string matching between the HTML associated with the HTTP response message and the conversion definition, and corresponds to a part that is syntactically defined in the conversion definition A protocol conversion method characterized in that a character string to be extracted is extracted from HTML and processed recursively.
HTMLの主要情報及び繰り返し構造を夫々変数化及び構文化した変換定義と、
SOAPリクエストメッセージを受信したときに、POSTメソッド又はGETメソッドを用いたHTTP通信により、前記SOAPリクエストメッセージをHTTPリクエストメッセージに変換して送信する送信手段と、
HTTPレスポンスメッセージを受信したときに、前記変換定義を参照して、前記HTTPレスポンスメッセージに係るHTMLをXMLに変換し、該HTTPレスポンスメッセージをSOAPレスポンスメッセージに変換して返信する返信手段と、
を含んで構成されたことを特徴とするプロトコル変換装置であって、
前記返信手段は、 HTTP レスポンスメッセージに係る HTML と前記変換定義との間で文字列照合を行い、該変換定義において構文化されている部分に該当する文字列を HTML から抽出して、再帰的に処理を行なうことを特徴とするプロトコル変換装置。
Transformation definitions that variableize and synthesize main HTML information and repetition structure, respectively.
A transmission means for converting the SOAP request message into an HTTP request message by HTTP communication using a POST method or a GET method when the SOAP request message is received;
When the HTTP response message is received, referring to the conversion definition, the HTML related to the HTTP response message is converted to XML, the HTTP response message is converted into a SOAP response message and returned,
A protocol conversion device characterized by comprising :
It said returning means performs string matching between HTML and the conversion definition according to the HTTP response message, and extracts a character string corresponding to the part that is the syntax of the said conversion definition from HTML, recursively A protocol converter characterized by performing processing.
JP2002318475A 2002-10-31 2002-10-31 Protocol conversion program, protocol conversion method, and protocol conversion apparatus Expired - Fee Related JP4049653B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002318475A JP4049653B2 (en) 2002-10-31 2002-10-31 Protocol conversion program, protocol conversion method, and protocol conversion apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002318475A JP4049653B2 (en) 2002-10-31 2002-10-31 Protocol conversion program, protocol conversion method, and protocol conversion apparatus

Publications (2)

Publication Number Publication Date
JP2004152145A JP2004152145A (en) 2004-05-27
JP4049653B2 true JP4049653B2 (en) 2008-02-20

Family

ID=32461602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002318475A Expired - Fee Related JP4049653B2 (en) 2002-10-31 2002-10-31 Protocol conversion program, protocol conversion method, and protocol conversion apparatus

Country Status (1)

Country Link
JP (1) JP4049653B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850663A (en) * 2017-02-28 2017-06-13 成都瑞小博科技有限公司 A kind of method for preventing webpage from kidnapping on the router

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008118485A (en) * 2006-11-07 2008-05-22 Meidensha Corp Secs message data preparing device
JP5175817B2 (en) * 2009-08-26 2013-04-03 日本電信電話株式会社 Request proxy system and request proxy method
CN102339219B (en) * 2010-07-20 2016-08-24 甲骨文国际公司 For supporting the system and method for object-oriented wscript.exe
CN102143200B (en) 2010-10-20 2013-09-11 华为技术有限公司 Public message header carrying method and public message header carrying device for transferring SOAP API into REST API
CN102594833B (en) * 2012-03-09 2016-01-06 北京思特奇信息技术股份有限公司 A kind of communication protocol adapting method and system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850663A (en) * 2017-02-28 2017-06-13 成都瑞小博科技有限公司 A kind of method for preventing webpage from kidnapping on the router

Also Published As

Publication number Publication date
JP2004152145A (en) 2004-05-27

Similar Documents

Publication Publication Date Title
EP1166524B1 (en) Providing clients with services that retrieve data from data sources that do not necessarily support the format required by the clients
US10747505B1 (en) API specification generation
JP4878627B2 (en) Initial server-side content rendering for client script web pages
US7251697B2 (en) Method and apparatus for structured streaming of an XML document
US20020046235A1 (en) Document creation and delivery
US20020078105A1 (en) Method and apparatus for editing web document from plurality of web site information
JP2002223211A (en) Communication system for controller based on soap protocol
JP2005530279A (en) System and method for accessing Internet content
US20060155825A1 (en) Network device managing apparatus and method and storage medium
JP2001344169A (en) Network system, server, web server, web page, data processing method, storage medium, and program transmitting device
CN111988171B (en) Method, proxy server and system for calling SOAP Web service based on RESTful style request
KR20040004559A (en) Parsing structured data
WO2001057661A2 (en) Method and system for reusing internet-based applications
US20030158894A1 (en) Multiterminal publishing system and corresponding method for using same
WO2012126301A1 (en) Processing method and device for message transmission and reception
CN109600381B (en) Interface adaptation method, device and system
JP4049653B2 (en) Protocol conversion program, protocol conversion method, and protocol conversion apparatus
KR20080089546A (en) Extensible remote tag markup system and method
Bovenzi et al. Enabling legacy system accessibility by web heterogeneous clients
US20030167262A1 (en) Cross-search method and cross-search program
CN109672732B (en) Interface adaptation method, device and system
US20020184263A1 (en) Method and system for converting usage data to extensive markup language
CN112433752B (en) Page analysis method, device, medium and electronic equipment
WO2001048630A9 (en) Client-server data communication system and method for data transfer between a server and different clients
EP1297451B1 (en) Service provision in a communications network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050606

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070801

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071127

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101207

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees