(57)【要約】【課題】  既存のＷｅｂアプリケーションを変更することなく、動的にＷｅｂサービスに変換する方法を提供すること。【解決の手段】  既存のＷｅｂアプリケーションをＷｅｂサービスに変換するのに必要な変換プロファイルを作成する第１のステップと、変換プロファイルに基づいて既存のＷｅｂアプリケーションをＷｅｂサービスに動的に変換する第２のステップを備える。第１のステップは、既存Ｗｅｂアプリケーションのセッション管理方法、提供するＷｅｂサービスのフロー情報、入力項目、出力項目を設定するステップを備え、第２のステップは、既存Ｗｅｂアプリケーションのセッション管理方式をＷｅｂサービスで利用できるセッション管理方式に変換するステップを備える。【選択図】        図１
2005056058.tif 000002
【特許請求の範囲】
【請求項１】
変換プロファイル作成装置と変換サーバによりＷｅｂサーバ内の既存ＷｅｂアプリケーションをＷｅｂサービスに変換する方法であって、
前記変換プロファイル作成装置が、コンテンツ管理者の指示に従い前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換するのに必要な情報を記述した変換プロファイルを作成する第１のステップと、
前記変換サーバが、ＷｅｂサービスクライアントからのＳＯＡＰリクエストに応じて、前記第１のステップで作成した変換プロファイルに基づき前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換する第２のステップと
を備えることを特徴とする既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項２】
前記第１のステップが、
前記既存Ｗｅｂアプリケーションのセッション情報を設定するステップａと、
提供するＷｅｂサービスのフロー情報を設定するステップｂと、
提供するＷｅｂサービスの入力項目を設定するステップｃと、
提供するＷｅｂサービスの出力項目を設定するステップｄと
を備えることを特徴とする請求項１に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項３】
前記ステップａにおいて、前記Ｗｅｂサーバがセッション管理を開始するＷｅｂページから、提供するＷｅｂサービスが利用するＷｅｂページまでに経由するＷｅｂページを設定することを特徴とする請求項２に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項４】
前記ステップａにおいて、前記既存ＷｅｂアプリケーションのＵＲＬの書き換えによるセッション管理に対応するため、次のＷｅｂページへのＵＲＬを現在のＷｅｂページ内の次ＷｅｂページへのリンクをXPathで指定することを特徴とする請求項２または３に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項５】
前記ステップｂにおいて、Ｗｅｂサービスを実行する前に、実行されるべきＷｅｂサービス名とその成否を設定することを特徴とする請求項２〜４のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項６】
前記ステップｃにおいて、前記Ｗｅｂページ内のFORMタグで指定された入力項目を、提供するＷｅｂサービスの入力項目として設定することを特徴とする請求項２〜５のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項７】
前記ステップｃにおいて、前記既存ＷｅｂアプリケーションのＵＲＬの引数によるデータの引渡しに対応するため、提供するＷｅｂサービスの入力項目として、引数をもつＵＲＬを設定することを特徴とする請求項２〜６のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項８】
前記ステップｃにおいて、提供するＷｅｂページへの入力項目として指定した項目に対して、変数名、型を設定することを特徴とする請求項２〜７のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項９】
前記ステップｄにおいて、前記既存ＷｅｂアプリケーションのＵＲＬの引数によるデータの引渡しに対応するため、リンクを含む部分を選択した場合、リンク先のＵＲＬを提供するＷｅｂサービスの出力項目として設定することを特徴とする請求項２〜８のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１０】
前記第２のステップが、作成した前記変換プロファイルに従い、Ｗｅｂサービスクライアントから受信したＳＯＡＰリクエストを解析し、ＨＴＴＰリクエストを生成し、Ｗｅｂサーバ内の既存Ｗｅｂアプリケーションが提供するＷｅｂページを取得するステップｅと、ＷｅｂサーバからのＨＴＴＰレスポンスを解析し、ＳＯＡＰレスポンスを生成してＷｅｂサービスクライアントに配信するステップｆとを備えることを特徴とする請求項２〜９のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１１】
前記ステップｅにおいて、ＷｅｂサービスクライアントからのＳＯＡＰリクエストにCookieなどのセッション情報がない場合、前記Ｗｅｂサーバがセッションを開始するＷｅｂページから、前記変換サーバが提供するＷｅｂサービスが利用するＷｅｂページまでＷｅｂページを辿ることによってセッション情報を取得することを特徴とする請求項１０に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１２】
前記ステップｅにおいて、前記変換サーバが最後に実行したＷｅｂサービスの状態及び結果を保持しておくことにより、提供するＷｅｂサービスを実行可能か決定することを特徴とする請求項１０または１１に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１３】
前記ステップｅにおいて、前記変換サーバの提供するＷｅｂサービスの入力項目が既存ＷｅｂページのFORMを基にしている場合、変換サーバが生成するＨＴＴＰリクエストのＵＲＬをFORMのaction属性値にすることを特徴とする請求項１０〜１２のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１４】
前記ステップｅにおいて、前記変換サーバの提供するＷｅｂサービスの入力項目がＵＲＬである場合、前記変換サーバが生成するＨＴＴＰリクエストのＵＲＬを、ＷｅｂサービスクライアントからのＳＯＡＰリクエスト中のＵＲＬに設定することを特徴とする請求項１０〜１３のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１５】
前記ステップｆにおいて、既存ＷｅｂアプリケーションがCookieによるセッション管理を行っている場合、前記変換サーバが提供するＷｅｂサービスもそのCookieを利用してセッション管理を行うことを特徴とする請求項１０〜１４のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１６】
前記ステップｆにおいて、既存ＷｅｂアプリケーションがＵＲＬの書換えによるセッション管理を行っている場合、前記変換サーバが提供するＷｅｂサービスでは、CookieなどＷｅｂサービスでも利用できるセッション管理方法に変換することを特徴とする請求項１０〜１５のいずれか一項に記載の既存ＷｅｂアプリケーションのＷｅｂサービスへの変換方法。
【請求項１７】
ＷｅｂサービスクライアントからのＳＯＡＰリクエストに応じて、Ｗｅｂサーバ内の既存ＷｅｂアプリケーションをＷｅｂサービスに変換する装置であって、
前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換するのに必要な情報を記述した変換プロファイルを変換プロファイル作成装置から受信する第１の手段と、
ＷｅｂサービスクライアントからのＳＯＡＰリクエストに応じて、前記変換プロファイル作成装置から受信した前記変換プロファイルに基づき、前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換する第２の手段と
を備えることを特徴とする既存ＷｅｂアプリケーションのＷｅｂサービスへの変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既存のＷｅｂアプリケーションをＷｅｂサービスに動的に変換する方法および装置に関する。
【背景技術】
【０００２】
従来のＷｅｂアプリケーションをＷｅｂサービスに変換する方法の一つに、プロキシ型の変換サーバを利用して、ＷｅｂサービスのプロトコルであるＳＯＡＰと既存のＷｅｂアプリケーションのプロトコルであるＨＴＴＰとを相互に変換する方法がある（特許文献１参照）。
ここで、既存Ｗｅｂアプリケーションとは、ユーザからのリクエストに応じて、ＷｅｂサーバがＷｅｂページを返すシステムを意味する。
【特許文献１】特願２００３−４２２２１号
【０００３】
この従来システムでは、変換サーバは、Ｗｅｂサービスとして提供する情報が記述されたＷｅｂページをＷｅｂアプリケーションから取得するのに必要な情報を、ＷｅｂサーバクライアントからＳＯＡＰリクエストとして受信する。この情報からＨＴＴＰリクエストを生成し、Ｗｅｂサーバから目的のＷｅｂページをＨＴＴＰレスポンスとして受信する。そして、このＷｅｂページから目的の情報を取得し、ＳＯＡＰ（Simple Object Access Protocol）レスポンスを生成してＷｅｂサーバクライアントに送信する。
この方法を用いると、既存のＷｅｂアプリケーションに対して修正や変更を行うことなく、Ｗｅｂサービスを提供できる。
例えば、＜ＦＯＲＭ＞タグを含むＷｅｂページＡにおいて、ユーザが検索キーを入力すると、検索結果を含むＷｅｂページＢを返す既存Ｗｅｂアプリケーションが存在しているものと想定する。この既存Ｗｅｂアプリケーションを、変換サーバを利用してＷｅｂサービスに変換するには以下のように行う。
【０００４】
変換サーバは、Ｗｅｂサービスクライアントから検索キーを含むＳＯＡＰリクエストを受信すると、このＳＯＡＰメッセージから検索キーを取得してＨＴＴＰリクエストを生成し、Ｗｅｂサーバに送信する。Ｗｅｂサーバは、ＷｅｂページＢを含むＨＴＴＰレスポンスを変換サーバに送信する。ＷｅｂサーバからＷｅｂページＢを含むＨＴＴＰレスポンスを受信した変換サーバは、ＷｅｂページＢから検索結果のデータのみを取得し、これからＳＯＡＰレスポンスを生成し、Ｗｅｂサービスクライアントに送信する。ここで、変換サーバは、これまで経由したＷｅｂページの履歴や、これまでに実行したＷｅｂサービスの結果については考慮していない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記した従来の変換システムは、リクエスト発行のたびにクライアントとサーバ間を接続し直すステートレス（Stateless）なＷｅｂサーバにしか対応しておらず、CookieやＵＲＬの書き換えを利用してセッション管理を行うステートフルなＷｅｂサーバには対応していない。
【０００６】
例えば、セッション管理が必要となる既存のＥＣサイトをＷｅｂサービスに変換する場合について説明する。
図１３〜１６は、ＥＣサイトの画面例である。ユーザは、最初にこのＥＣサイトのホームページ（home）１３００（図１３）にアクセスする。Ｗｅｂサーバは、Ｗｅｂページhomeがリクエストされると、セッションＩＤを生成し、CookieあるいはＵＲＬによる書き換えの方法を用いてセッション管理を開始する。次に、商品検索ページ（search）１４００（図１４）に移動し、目的の商品の商品名１４０１やメーカ名１４０２を入力して商品を検索する。目的の商品が検索できた場合、商品検索結果の表において、目的の商品の「入れる」のリンク１４０３を押し、ショッピングカートページ（shopping_cart）１５００（図１５）へ移動する。ショッピングカートページ（shopping_cart）１５００は、ユーザが選択した商品の見積もり結果を表示する。ユーザは見積もりの内容に問題がなければ、購入ボタン１５０１を押し、購入結果ページ（purchase）１６００（図１６）に移動する。
以上で、商品の購入が完了する。ただし、ここでは氏名や住所など個人情報を入力するページは省略している。
【０００７】
図１７は許可されているページ間遷移を表した図である。商品検索ページsearch１７０２は、自分自身、ホームページhome１７０１、ショッピングカートページshopping_cart１７０３からしかアクセスできず、最初にアクセスするには、セッションを特定するためのセッションＩＤを発行し、Cookieの設定やＵＲＬの書き換えを開始するホームページhome１７０１を経由しなければならないことを意味している。
また、ショッピングカートページshopping_cart１７０３は、商品検索ページsearch１７０２から、購入結果ページpurchase１７０４は商品検索ページshopping_cart１７０３からしかアクセスできない。Ｗｅｂサーバは、この遷移が守られていることをセッション管理によって確認している。
次に、このＥＣサイトをＷｅｂサービスとして提供することを考える。そして、このＥＣサイトを図１８に示すように３つのサービスに分けて提供する場合を考える。すなわち、商品検索ページsearchを利用し商品検索を行うサービスSearch１８０１、商品検索ページsearchとショッピングカートページshopping_cartを利用して商品見積もりを行うサービスEstimation１８０２、ショッピングカートページshopping_cartと購入結果ページpurchaseを利用して商品購入を行うサービスPurchase１８０３である。
【０００８】
このとき、従来のシステムを用いると以下の問題が生じる。
まず、サービスSearch１８０１を実行しようとすると、変換サーバはホームページhomeを経由せずに直接、商品検索ページsearchを要求するため、検索結果を取得できない。また、サービスEstimation１８０２を実行しようとすると、商品を特定するための情報は商品検索ページsearchの検索結果に依存するので、前の状態（商品検索ページsearchの検索結果）を保持していない変換サーバは、Ｗｅｂサーバにショッピングカートページshopping_cartを要求できない。
【０００９】
本発明の目的は、このような問題を解決し、ステートフルなＷｅｂサーバを利用した既存ＷｅｂアプリケーションをＷｅｂサービスに変換する方法および装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明は、既存のＷｅｂアプリケーションをＷｅｂサービスに動的に変換する方法であって、
前記変換プロファイル作成装置が、コンテンツ管理者の指示に従い前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換するのに必要な情報を記述した変換プロファイルを作成する第１のステップと、前記変換サーバが、ＷｅｂサービスクライアントからのＳＯＡＰリクエストに応じて、前記第１のステップで作成した変換プロファイルに基づき前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換する第２のステップとを備えることを特徴とする。
そして、前記第１のステップが、
前記既存Ｗｅｂアプリケーションのセッション情報を設定するステップａと、提供するＷｅｂサービスのフロー情報を設定するステップｂと、提供するＷｅｂサービスの入力項目を設定するステップｃと、提供するＷｅｂサービスの出力項目を設定するステップｄとを備えることを特徴とする。
また、前記ステップａにおいて、前記Ｗｅｂサーバがセッション管理を開始するＷｅｂページから、提供するＷｅｂサービスが利用するＷｅｂページまでに経由するＷｅｂページを設定することを特徴とする。
また、前記ステップａにおいて、前記既存ＷｅｂアプリケーションのＵＲＬの書き換えによるセッション管理に対応するため、次のＷｅｂページへのＵＲＬを現在のＷｅｂページ内の次ＷｅｂページへのリンクをXPathで指定することを特徴とする。
また、前記ステップｂにおいて、Ｗｅｂサービスを実行する前に、実行されるべきＷｅｂサービス名とその成否を設定することを特徴とする。
また、前記ステップｃにおいて、前記Ｗｅｂページ内のFORMタグで指定された入力項目を、提供するＷｅｂサービスの入力項目として設定することを特徴とする。
また、前記ステップｃにおいて、前記既存ＷｅｂアプリケーションのＵＲＬの引数によるデータの引渡しに対応するため、提供するＷｅｂサービスの入力項目として、引数をもつＵＲＬを設定することを特徴とする。
また、前記ステップｃにおいて、提供するＷｅｂページへの入力項目として指定した項目に対して、変数名、型を設定することを特徴とする。
また、前記ステップｄにおいて、前記既存ＷｅｂアプリケーションのＵＲＬの引数によるデータの引渡しに対応するため、リンクを含む部分を選択した場合、リンク先のＵＲＬを提供するＷｅｂサービスの出力項目として設定することを特徴とする。
また、前記第２のステップが、作成した前記変換プロファイルに従い、Ｗｅｂサービスクライアントから受信したＳＯＡＰリクエストを解析し、ＨＴＴＰリクエストを生成し、Ｗｅｂサーバ内の既存Ｗｅｂアプリケーションが提供するＷｅｂページを取得するステップｅと、ＷｅｂサーバからのＨＴＴＰレスポンスを解析し、ＳＯＡＰレスポンスを生成してＷｅｂサービスクライアントに配信するステップｆとを備えることを特徴とする。
また、前記ステップｅにおいて、ＷｅｂサービスクライアントからのＳＯＡＰリクエストにCookieなどのセッション情報がない場合、前記Ｗｅｂサーバがセッションを開始するＷｅｂページから、前記変換サーバが提供するＷｅｂサービスが利用するＷｅｂページまでＷｅｂページを辿ることによってセッション情報を取得することを特徴とする。
また、前記ステップｅにおいて、前記変換サーバが最後に実行したＷｅｂサービスの状態及び結果を保持しておくことにより、提供するＷｅｂサービスを実行可能か決定することを特徴とする。
また、前記ステップｅにおいて、前記変換サーバの提供するＷｅｂサービスの入力項目が既存ＷｅｂページのFORMを基にしている場合、変換サーバが生成するＨＴＴＰリクエストのＵＲＬをFORMのaction属性値にすることを特徴とする。
また、前記ステップｅにおいて、前記変換サーバの提供するＷｅｂサービスの入力項目がＵＲＬである場合、前記変換サーバが生成するＨＴＴＰリクエストのＵＲＬを、ＷｅｂサービスクライアントからのＳＯＡＰリクエスト中のＵＲＬに設定することを特徴とする。
また、前記ステップｆにおいて、既存ＷｅｂアプリケーションがCookieによるセッション管理を行っている場合、前記変換サーバが提供するＷｅｂサービスもそのCookieを利用してセッション管理を行うことを特徴とする。
また、前記ステップｆにおいて、既存ＷｅｂアプリケーションがＵＲＬの書換えによるセッション管理を行っている場合、前記変換サーバが提供するＷｅｂサービスでは、CookieなどＷｅｂサービスでも利用できるセッション管理方法に変換することを特徴とする。
【００１１】
本発明に係る変換装置は、ＷｅｂサービスクライアントからのＳＯＡＰリクエストに応じて、Ｗｅｂサーバ内の既存ＷｅｂアプリケーションをＷｅｂサービスに変換する装置であって、
前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換するのに必要な情報を記述した変換プロファイルを変換プロファイル作成装置から受信する第１の手段と、ＷｅｂサービスクライアントからのＳＯＡＰリクエストに応じて、前記変換プロファイル作成装置から受信した前記変換プロファイルに基づき、前記既存ＷｅｂアプリケーションをＷｅｂサービスに変換する第２の手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、セッション管理を行っている既存Ｗｅｂアプリケーションにも対応することができ、より多くの既存ＷｅｂアプリケーションをＷｅｂサービスに動的に変換することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施する場合の一形態を、図面を参照して具体的に説明する。
図１は、本発明に係る変換方法を適用した変換システムの実施形態を示す全体構成図である。
ここで示すシステムは、Ｗｅｂサービスの提供を受けるＷｅｂサービスクライアント１１０、インターネット１２０を通して既存Ｗｅｂアプリケーションを動的に変換しＷｅｂサービスを提供する変換サーバ１５０、既存ＷｅｂアプリケーションをＷｅｂサービスに変換するためのプロファイルを作成する変換プロファイル作成装置１３０、既存のＷｅｂアプリケーションを提供するＷｅｂサーバ１４０から構成される。
変換サーバ１５０は、Ｗｅｂサービスクライアント１１０からＳＯＡＰリクエストを受信し解析するＳＯＡＰリクエスト受信・解析部１５１、データの送受信を制御する制御部１５２、Ｗｅｂサービスを提供するための情報を保持するサービス情報保持部１５３、提供したサービスや取得したＷｅｂページの情報を保持しておくステータス保持部１５４、取得したＷｅｂページを解析するコンテンツ解析部１５５、Ｗｅｂサーバ１４０からＷｅｂページを取得するためのＨＴＴＰリクエストを生成し送信するＨＴＴＰリクエスト生成・送信部１５６、Ｗｅｂサーバ１４０からのレスポンスを受信するＨＴＴＰレスポンス受信部１５７、Ｗｅｂサービスクライアント１１０に結果を返すＳＯＡＰレスポンスを生成し送信するＳＯＡＰレスポンス生成・送信部１５８、変換プロファイル作成装置１３０が生成した変換プロファイルを受信する変換プロファイル受信部１５９から構成される。
ステータス保持部１５４には、図１２に示すように、セッションＩＤ１２０１ごとに、最後に実行したＷｅｂサービス名１２０２、最後に実行したＷｅｂサービスの成否１２０３、最後に取得したＨＴＴＰレスポンス１２０４の情報が保持されている。
変換サーバ１５０が、Ｗｅｂサーバ１４０内に実装された既存のＷｅｂアプリケーションを動的に変換してＷｅｂサービスを提供するには、最初にコンテンツ管理者が変換プロファイル作成装置１３０を利用して、変換プロファイルを作成する必要がある。
変換プロファイルとは、既存ＷｅｂアプリケーションをＷｅｂサービスに変換する上で必要となる既存Ｗｅｂアプリケーションに関する情報のことである。
【００１４】
変換プロファイル作成装置１３０の画面を図２に示す。
画面は、１つのＷｅｂサイト（プロジェクト２２１）が提供するＷｅｂサービスの変換プロファイル２２２の一覧を表示するプロジェクト構成表示部２２０、Ｗｅｂページを表示するブラウザ部２３０、変換プロファイルに記述される情報を設定するサービス設定部２４０から構成されている。さらにサービス設定部２４０は、このＷｅｂサービスへの入力に関する設定を行う入力部２４１、出力に関する設定を行う出力部２４２、セッションに関する設定を行うセッション部２４３、このＷｅｂサービスが実行される前の状態に関する設定を行うフロー部２４４から構成されている。
【００１５】
コンテンツ管理者がこの変換プロファイル作成装置１３０を利用して変換プロファイルを作成する手順について説明する。ここでは、図３のフローチャートに基づいて、２つのＷｅｂサービスSearchとEstimationの変換プロファイルを作成する例を示すことにより具体的に説明する。
最初に、ＷｅｂサービスSearchを作成する例を示す。このサービスは、図１４で説明した商品検索ページsearchを利用し、商品名とメーカを入力すると、商品検索結果を出力するサービスである（図１８参照）。
まず、ステップ３０１において、コンテンツ管理者は、空の変換プロファイルSearchを作成する。作成した変換プロファイルは、プロジェクト構成表示部２２０に表示される。
ステップ３０２では、コンテンツ管理者は、セッション部２４３にセッション管理に関する情報を入力する。ＷｅｂサービスSearchに利用する商品検索ページsearchは、図１８で説明したようにホームページhome経由でなければアクセスできない。そこで、図４に示すように、ブラウザ部２３０にホームページhomeを表示する。図４は、変換プロファイル作成装置１３０の画面のうちブラウザ部２３０とサービス設定部２４０のみを図示している。これ以降の図では、この２つの部分のみを図示する。
【００１６】
コンテンツ管理者は、ホームページhome内の商品検索ページsearchへのリンクをマウスポインタ４０１で選択し、コンテキストメニュー４０２の「１ページ目から２ページ目」を選択する。これにより、セッション部２４３のセッション開始ページ４０３にホームページhomeのＵＲＬ、２ページ目以降のページ４０４に商品検索ページsearchへのリンクを表すタグ＜Ａ＞のXPathが入力される。ここで、商品検索ページsearchのＵＲＬではなく、リンクを表すタグ＜Ａ＞のXPathを指定しているのは、ＵＲＬの書き換えによるセッション管理によりＵＲＬが動的に作成される場合に対応するためである。また、マウスポインタ４０１によるＷｅｂページ内のタグの選択方法は、特開２００３−６１０６号公報（出願人および発明者は本願発明と同一）に開示されている手法を用いることができる。
ステップ３０３では、コンテンツ管理者は、ブラウザ部２３０に呼び出し元のページsearchを表示させる（図５参照）。
この例ではフロー部への入力の必要がないのでステップ３０４は省略する。フロー部への入力はもう一方の例で説明する。
【００１７】
ステップ３０５では、コンテンツ管理者は、ＷｅｂサービスSearchの入力項目を設定する（図５参照）。すなわち、コンテンツ管理者は、商品検索ページsearch内で目的の入力部を含むタグ＜FORM＞全体をマウスポインタ５０１で選択し、コンテキストメニューの「取り込み」５０２を選択する。これにより、入力部２４１において、「FORMによる入力」５０３が選択され、タグ＜FORM＞の情報（ACTION,METHOD）及び、子要素の＜INPUT＞, ＜TEXTAREA＞の情報が表示される。
コンテンツ管理者は、さらに、入力項目に対して、子要素のタグについて、変数名（ProductName, MakerName）及び変数の型（文字列string）５０４を設定する。
ステップ３０６では、コンテンツ管理者は、呼び出し先Ｗｅｂページである検索結果が表示された商品検索ページsearchをブラウザ部２３０に表示させる（図６参照）。
ステップ３０７では、コンテンツ管理者は、ＷｅｂサービスSearchの出力項目を設定する（図６参照）。すなわち、コンテンツ管理者は、Ｗｅｂページsearch内の出力項目である商品検索結果を表示しているタグ＜TABLE＞部分をマウスポインタ６０１で選択し、コンテキストメニュー６０２を選択する。これにより、図６（ｂ）に示すようなTABLE入力ダイアログ６１０が表示される。
【００１８】
コンテンツ管理者は、TABLE入力ダイアログ６１０においてデータが行単位か列単位かを選択し（６１１）、またラベルを除くデータが開始されている開始行、開始列を設定し（６１２）、各列（行）に対する変数名及び変数の型６１３を設定する。ここで、４列目の変数の型には「ＵＲＬ」６１４が設定されている。これは、４列目「カート」の「入れる」６０３には、リンクが設定されており、そのＵＲＬにはセッションや商品を特定する情報が含まれている（例えばHTTP
1059715047515_0
○Shopping/shopping_cart;sessionＩＤ=abcd123?product_code=4567890)。このため、４列目は「入れる」という文字列よりも、そのリンクのＵＲＬが重要であり、変数の型として「ＵＲＬ」を設定すると、ＷｅｂサービスSearchの出力として、そのＵＲＬを返すことを指定している。
以上のTABLE入力ダイアログ６１０への設定により、出力部２４２に図６（ａ）に示すような出力情報６２０が表示される。
【００１９】
ステップ３０８では、変換プロファイル作成装置１３０が上記の情報が記述された変換プロファイルを保存し、変換サーバ１５０に配置する。変換サーバ１５０では、変換プロファイル受信部１５９が変換プロファイル作成装置１３０から送信された変換プロファイルを受信し、制御部１５２に変換プロファイルに記述された情報を渡す。
制御部１５２は、サービス情報保持部１５３にその情報を保持させる。また、制御部１５２は、変換プロファイルの情報に基づきＷＤＳＬ（Web Service Description Language）を生成し、公開する。生成されるＷＤＳＬについては前述した特許参考文献１に説明されているので、ここでの詳細な参照は省略する。
【００２０】
次に、ＷｅｂサービスEstimationを作成する例を示す。
このサービスは、商品検索ページsearchとショッピングカートページshopping_cartを利用し（図１８参照）、商品の検索結果に含まれる商品を選択すると、その商品の見積もりを出力するサービスである。
まず、ステップ３０１では、コンテンツ管理者は、空の変換プロファイルEstimationを作成する。
この例ではステップ３０２のセッション部への入力は必要ないので、省略する。セッション部への入力例はもう一方の例で説明している。
ステップ３０３では、コンテンツ管理者は、呼び出し元Ｗｅｂページである検索結果の表示された商品検索ページsearchをブラウザ部２３０に表示する（図７参照）。
ステップ３０４では、コンテンツ管理者は、サービス設定部２４０のフロー部２４４に、このＷｅｂサービスEstimationが実行できる条件を入力する（図７参照）。ＷｅｂサービスEstimationは、商品検索サービスSearchが実行されて成功した場合に実行できるので、コンテンツ管理者は、サービス名が「Search」、実行結果が「成功」という条件７０１を入力する。
【００２１】
ステップ３０５では、コンテンツ管理者は、ＷｅｂサービスEstimationの入力項目を設定する（図８参照）。商品検索ページsearchからショッピングカートページshopping_cartへ移動するには、検索結果の特定の商品に対する列「カート」の「入れる」８０１をクリックする。前述の通り「入れる」のリンクには、商品情報やセッション情報が含まれるが設定されており、これによってＷｅｂサーバ１４０は誰が何の商品を選択したか認識することができる。このような場合、コンテンツ管理者は、入力部２４１の「ＵＲＬによる入力」８０２を選択する。これにより、ＷｅｂサービスEstimationは入力項目としてＵＲＬを入力できるようになる。
ステップ３０６では、コンテンツ管理者は、呼び出し先のページshopping_cartをブラウザ部２３０に表示する（図９参照）。
ステップ３０７では、コンテンツ管理者は、ＷｅｂサービスEstimationの出力項目を設定する（図９参照）。すなわち、コンテンツ管理者は、見積もりが表示されたTABLE部分９０１を選択し、出力部２４２において変数名や変数型などの必要な設定を行う。
ステップ３０８では、変換プロファイル作成装置１３０は、上記の情報が記述された変換プロファイルを保存し、変換サーバ１５０に配置する。
以上で、ＷｅｂサービスSearchとEstimationniに関する変換プロファイル作成装置１３０による変換プロファイルの作成が完了したことになる。
【００２２】
次に、以上のようにして作成され、変換サーバ１５０のサービス情報保持部１５３に保持された変換プロファイルを用い、変換サーバ１５０がセッション管理を行う既存ＷｅｂアプリケーションをＷｅｂサービスに変換する手順を図１０、図１１のフローチャートに基づいて説明する。
最初に、既存Ｗｅｂアプリケーションが、Cookieによるセッション管理を行っている場合について説明する。
図１０はこの場合における、変換サーバ１５０が既存ＷｅｂアプリケーションをＷｅｂサービスに変換する手順を説明するフローチャートである。ここで、変換サーバ１５０とＷｅｂサーバ１４０間で行っているCookieによるセッション管理方式は、変換サーバ１５０とＷｅｂサービスクライアント１１０間のＷｅｂサービスにおけるセッション管理方式としても利用できる。
【００２３】
まず、ステップ１００１では、ＳＯＡＰリクエスト受信・解析部１５１が、Ｗｅｂサービスクライアント１１０からのＳＯＡＰリクエストを受信し、Cookie情報を取得する。ただし、ここではＷｅｂサービスのセッション管理は、Cookieを用いて行うものとする。もし、Cookie情報が存在すればステップ１００２を実行し、存在しない場合は１０１２を実行する。
ステップ１００２では、制御部１５２が、ステータス保持部１５４が保持している最後に実行したＷｅｂサービス名１２０２及びその成否１２０３（図１２参照）と、サービス情報保持部１５３が保持している図３のステップ３０４で設定したこのＷｅｂサービスを実行する条件とを比較する。比較した結果がこのＷｅｂサービスを実行するのに適切であれば、ステップ１００４を実行し、不適切であればステップ１００３を実行して例外をＷｅｂサービスクライアント１１０に返信する。
ステップ１００４では、制御部１５２が、サービス情報保持部１５３が保持する図３のステップ３０５で設定した入力項目を参照して、ＳＯＡＰリクエストから必要なデータを取得する。
【００２４】
ステップ１００５では、ＨＴＴＰリクエスト生成・送信部１５６がステップ１００４で取得したデータを基にＨＴＴＰリクエストを生成し、Ｗｅｂサーバ１４０に送信する。生成されるＨＴＴＰリクエストについては、前述の特許文献1に説明されているのと同様である。
ステップ１００６では、ＨＴＴＰレスポンス受信部１５７が、Ｗｅｂサーバ１４０からＨＴＴＰレスポンスを受信する。
ステップ１００７では、制御部１５２が、ＨＴＴＰレスポンスからCookieに関する情報を取得する。
ステップ１００８では、コンテンツ解析部１５５が、ＨＴＴＰレスポンスに含まれるＨＴＭＬ文書を解析し、サービス情報保持部１５３が保持する図３のステップ３０７で設定した出力項目を参照して、必要なデータを取得する。取得方法の詳細に関しては、前述の特許文献１に説明されているのと同様であるので、ここでの説明は省略する。ただし、変数の型が「ＵＲＬ」である変数に関しては、指定したリンクに設定されたＵＲＬを取得する。
【００２５】
ステップ１００９では、ＳＯＡＰレスポンス生成・送信部１５８が、ステップ１００８で取得したデータを基にＳＯＡＰレスポンスを作成する。生成されるＳＯＡＰレスポンスに関しては、前述の特許文献１に説明されているのと同様である。
ステップ１０１０では、制御部１５２が、ステータス保持部１５４が保持する情報を更新する。すなわち、ステップ１００９でＳＯＡＰレスポンスの作成に成功した場合は、制御部１５２は、ステータス保持部１５４にサービス名とそのサービスが成功したことを保持させ、ＨＴＴＰレスポンスが取得できない、ＨＴＭＬ文書から必要なデータが取得できない、などの問題が生じた場合は、ステータス保持部１５４に「失敗」というステータスを保持させる。
ステップ１０１１では、ＳＯＡＰレスポンス生成・送信部１５８が、ステップ１００９で作成したＳＯＡＰレスポンスに、ステップ１００７で取得したCookie情報を設定してＷｅｂサービスクライアント１１０に送信する。
【００２６】
一方、ステップ１０１２では、制御部１５２が、サービス情報保持部１５３に保持されている図３のステップ３０２で設定したセッションに関する情報を参照し、最初に実行されるサービスとして適切か判定する。セッションに関する情報が設定されているならば適切であると判断し、ステップ１０１４を実行する。セッションに関する情報が設定されていなければ、不適切と判断し、ステップ１０１３を実行し、Ｗｅｂサービスクライアント１１０に例外を返信する。
ステップ１０１４では、制御部１５２が、サービス情報保持部１５３に保持されている図３のステップ３０２で設定したセッションに関す情報と、ステータス保持部１５４が保持する最後に取得したＨＴＴＰレスポンス１２０４（図１２）のＵＲＬとを比較し、次にアクセスすべきＷｅｂページが存在するか判定する。存在する場合は、ステップ１０１５を実行し、存在しない場合は、ステップ１００４を実行する。
ステップ１０１５では、ＨＴＴＰリクエスト生成・送信部１５６が、ステップ１０１４で取得したＵＲＬとステップ１０１７で取得するCookie情報を含むＨＴＴＰリクエストを生成し、Ｗｅｂサーバ１４０に送信する。
【００２７】
ステップ１０１６では、ＨＴＴＰレスポンス受信部１５７がＷｅｂサーバ１４０からＨＴＴＰレスポンスを受信する。
ステップ１０１７では、制御部１５２がステップ１０１６で取得したＨＴＴＰレスポンスからCookie情報を取得する。
ステップ１０１８では、制御部１５２が、ステータス保持部１５４にステップ１０１６で取得したＨＴＴＰレスポンスを保持させる。
以上が、Ｗｅｂサーバ１４０内の既存Ｗｅｂアプリケーションが、ＵＲＬの書き換えによるセッション管理を行っている場合のＷｅｂサービスへの変換の手順である。
【００２８】
次に、既存Ｗｅｂアプリケーションが、ＵＲＬの書き換えによるセッション管理を行っている場合の変換手順を、図１１のフローチャートに基づいて説明する。
ＵＲＬの書き換えによるセッション管理方式は、Ｗｅｂサービスにおけるセッション管理方式として利用することができない。そのため、既存ＷｅｂアプリケーションがＵＲＬの書き換えによるセッション管理を行っている場合、変換サーバ１５０は、Ｗｅｂサービスクライアント１１０とのセッション管理は、CookieなどのＷｅｂサービスで利用可能なセッション管理方式に変換して行う必要がある。
まず、ステップ１１０１では、ＳＯＡＰリクエスト受信・解析部１５１が、Ｗｅｂサービスクライアント１１０からのＳＯＡＰリクエストを受信し、Cookie情報を取得する。Cookie情報が存在すれば、ステップ１１０２を実行し、存在しなければ、ステップ１１１１を実行する。
ステップ１１０２では、制御部１５２が、ステータス保持部１５４が保持している最後に実行したＷｅｂサービス名１２０２及びその成否１２０３（図１２参照）と、サービス情報保持部１５３が保持している図３のステップ３０４で設定したこのＷｅｂサービスを実行する条件とを比較する。比較した結果が一致し、このＷｅｂサービスを実行するのに適切であれば、ステップ１１０４を実行し、比較した結果が一致せず不適切であればステップ１１０３を実行して例外をＷｅｂサービスクライアント１１０に返信する。
ステップ１１０４では、制御部１５２が、サービス情報保持部１５３の保持する図３のステップ３０５で設定した入力項目を参照して、ＳＯＡＰリクエストから必要なデータを取得する。
【００２９】
ステップ１１０５では、ＨＴＴＰリクエスト生成・送信部１５６がステップ１１０４で取得したデータを基にＨＴＴＰリクエストを生成し、Ｗｅｂサーバ１４０に送信する。生成されるＨＴＴＰリクエストについては、前述の特許文献１で説明されているのと同様である。
このとき、ＨＴＴＰリクエスト生成・送信部１５６は、サービス情報保持部１５３から図３のステップ３０５で設定した入力部の情報（図５及び図８）を参照し、「ＵＲＬの直接入力」または「FORMによる入力」であるか判断する。「ＵＲＬの直接入力」の場合は、ＨＴＴＰリクエスト生成・送信部１５６は、ステップ１１０４で取得したＳＯＡＰリクエストからＵＲＬを取得し、ＨＴＴＰリクエストを生成する。「FORMによる入力」の場合は、ＨＴＴＰリクエスト生成・送信部１５６は、図３のステップ３０５で設定した図５のACTIONの値５０５からＵＲＬを取得し、ＨＴＴＰリクエストを生成する。
ステップ１１０６では、ＨＴＴＰレスポンス受信部１７が、Ｗｅｂサーバ１４０から信する。
【００３０】
ステップ１１０７では、コンテンツ解析部１５が、ＨＴＴＰレスポンスに含まれるＨＴＭＬ文書を解析し、サービス情報保持部１３が保持する図３のステップ３０７で設定した出力項目を参照し、必要なデータを取得する。取得方法の詳細に関しては、前述の特許文献１で説明されているのと同様である。ただし、変数の型が「ＵＲＬ」である変数に関しては、指定したリンクに設定されたＵＲＬを取得する。
ステップ１１０８では、ＳＯＡＰレスポンス生成・送信部７５９が、ステップ１１０７で取得したデータを基にＳＯＡＰレスポンスを作成する。生成されるＳＯＡＰレスポンスに関しては、前述の特許文献１で説明されているのと同様である。
【００３１】
ステップ１１０９では、制御部１５２が、ステータス保持部１５４が保持する情報を更新する。すなわち、ステップ１１０９でＳＯＡＰレスポンスの作成に成功した場合は、制御部１５２は、ステータス保持部１５４にサービス名とそのサービスが成功したことを保持させ、ＨＴＴＰレスポンスが取得できない、ＨＴＭＬ文書から必要なデータが取得できない、などの問題が生じた場合は、ステータス保持部１５４に「失敗」というステータスを保持させる。
ステップ１１１０では、ＳＯＡＰレスポンス生成・送信部１５８が、ステップ１１０８で作成したＳＯＡＰレスポンスに、ステップ１１０１で取得したCookie情報または、ステップ１１１３で生成したセッションＩＤを基に生成したCookie情報を設定してＷｅｂサービスクライアント１１０に送信する。
【００３２】
一方、ステップ１１１１では、制御部１５２が、サービス情報保持部１５３に保持されている図３のステップ３０２で設定したセッションに関する情報を参照し、最初に実行されるサービスとして適切か判定する。セッションに関する情報が設定されているならば適切であると判断し、ステップ１１１３を実行する。セッションに関する情報が設定されていなければ、不適切と判断しステップ１１１２を実行し、Ｗｅｂサービスクライアント１１０に例外を返信する。
ステップ１１１３では、制御部１５２が、このセッションに対するセッションＩＤを生成し、ステータス保持部１５４にこのセッションＩＤを登録する。
ステップ１１１４では、サービス情報保持部１５３に保持されている図３のステップ３０２で設定したセッションに関する情報と、ステータス保持部１５４が保持する最後に取得したＨＴＴＰリクエスト１２０４（図１２）のＵＲＬとを比較し、次にアクセスすべきＷｅｂページが存在するか判定する。存在する場合は、ステップ１１１５を実行し、存在しない場合は、ステップ１１０４を実行する。
【００３３】
ステップ１１１５では、ＨＴＴＰリクエスト生成・送信部１５６が、ＨＴＴＰリクエストを生成し、Ｗｅｂサーバ１４０に送信する。ＨＴＴＰリクエスト生成・送信部１５６は、このＨＴＴＰリクエストのＵＲＬを次のように求める。すなわち、アクセスするＷｅｂページがセッション開始ページであるならば、ＨＴＴＰリクエスト生成・送信部１５６は、サービス情報保持部１５３から図３のステップ３０２で設定した図４のセッション開始ページ４０３のＵＲＬを取得する。２ページ目以降であるならば、サービス情報保持部１５３から図３のステップ３０２で設定した図４の２ページ目以降のページにおける「Xpath」４０４を取得し、ステータス保持部１５４が保持する最後に取得したＨＴＴＰレスポンス１２０４（図１２）のＨＴＭＬ文書からXPathに従いＵＲＬを取得する。これにより、動的に生成されるＵＲＬに対応可能になる。
ステップ１１１６では、ＨＴＴＰレスポンス部１５７がＷｅｂサーバ１４０からＨＴＴＰレスポンスを受信する。
ステップ１１１７では、制御部１５２が、ステータス保持部１５４にステップ１１１６で取得したＨＴＴＰレスポンスを保持させる。
なお、以上の説明では、Ｗｅｂサービスのセッション管理にCookieを利用したが、ＳＯＡＰヘッダーを利用してもよい。
【図面の簡単な説明】
【００３４】
【図１】本発明の既存ＷｅｂアプリケーションをＷｅｂサービスに変換する方法を適用したシステムの実施の形態を示す図である。
【図２】変換プロファイル作成装置の画面例を示す図である。
【図３】変換プロファイルを作成する手順を説明するフローチャートである。
【図４】ＷｅｂサービスSearchのセッションに関する設定を行う変換プロファイル作成装置の画面例を示す図である。
【図５】ＷｅｂサービスSearchの入力項目に関する設定を行う変換プロファイル作成装置の画面例を示す図である。
【図６】ＷｅｂサービスSearchの出力項目に関する設定を行う変換プロファイル作成装置の画面例を示す図である。
【図７】ＷｅｂサービスEstimationのフローに関する設定を行う変換プロファイル作成装置の画面例を示す図である。
【図８】ＷｅｂサービスEstimationの入力項目に関する設定を行う変換プロファイル作成装置の画面例を示す図である。
【図９】ＷｅｂサービスEstimationの出力項目に関する設定を行う変換プロファイル作成装置の画面例を示す図である。
【図１０】既存ＷｅｂアプリケーションがCookieによるセッション管理を行っている場合に、変換サーバが既存ＷｅｂアプリケーションをＷｅｂサービスに変換する手順を説明するフローチャートである。
【図１１】既存ＷｅｂアプリケーションがＵＲＬの書き換えによるセッション管理を行っている場合に、変換サーバが既存ＷｅｂアプリケーションをＷｅｂサービスに変換する手順を説明するフローチャートである。
【図１２】ステータス保持部のデータ構造を示す図である。
【図１３】セッション管理を行う既存ＥＣサイトにおけるホームページの画面例である。
【図１４】セッション管理を行う既存ＥＣサイトにおける商品検索ページの画面例である。
【図１５】セッション管理を行う既存ＥＣサイトにおけるショッピングカートページの画面例である。
【図１６】セッション管理を行う既存ＥＣサイトにおける購入手続き完了を表示するページの画面例である。
【図１７】Ｗｅｂページ間の可能なページ遷移を示す図である。
【図１８】本発明の変換方法を用いて提供するＷｅｂサービスと既存のＷｅｂページとの関係を示す図である。
【符号の説明】
【００３５】
１１０    Ｗｅｂサービスクライアント
１２０    インターネット
１３０    変換プロファイル作成装置
１４０    Ｗｅｂサーバ
１５０    変換サーバ
１５１    ＳＯＡＰリクエスト受信・解析部
１５２    制御部
１５３    サービス情報保持部
１５４    ステータス保持部
１５５    コンテンツ解析部
１５６    ＨＴＴＰリクエスト生成・送信部
１５７    ＨＴＴＰレスポンス受信部
１５８    ＳＯＡＰレスポンス生成・送信部
１５９    変換プロファイル受信部
【図１】
2005056058.tif 000003
【図２】
2005056058.tif 000004
【図３】
2005056058.tif 000005
【図４】
2005056058.tif 000006
【図５】
2005056058.tif 000007
【図６】
2005056058.tif 000008
【図７】
2005056058.tif 000009
【図８】
2005056058.tif 000010
【図９】
2005056058.tif 000011
【図１０】
2005056058.tif 000012
【図１１】
2005056058.tif 000013
【図１２】
2005056058.tif 000014
【図１３】
2005056058.tif 000015
【図１４】
2005056058.tif 000016
【図１５】
2005056058.tif 000017
【図１６】
2005056058.tif 000018
【図１７】
2005056058.tif 000019
【図１８】
2005056058.tif 000020