(57)【要約】【課題】Ｗｅｂアプリケーションへのアクセスを行ったクライアントの識別を可能とするとともに、アクセスの際におけるＩＤ等の入力を不要とすることのできるＷｅｂアプリケーションのアクセス処理手段を提供する。【解決手段】クライアントアプリケーション１４４による業務処理コンポーネント１２０の提供するサービスの利用の際に、アクセスライブラリ１４３とアクセスインタフェース１１５との間で送受信するＳＯＡＰメッセージに含まれるメソッド名を示す識別情報を生成する識別情報生成装置１１２と、アクセスライブラリ１４３を生成するライブラリ生成装置１１３と、アクセスインタフェース１１５を生成するアクセスインタフェース制御装置１１４とを備える。【選択図】      図１
2004272303.tif 000002
【特許請求の範囲】
【請求項１】
サーバアプリケーションに備えられたアクセス処理手段として、ネットワークを介して接続されたクライアントアプリケーションからのアクセスを識別可能とするアクセス処理手段の開発支援装置であって、
各クライアントを識別する識別情報を生成する識別情報生成手段と、
各クライアントアプリケーションに備えられるアクセスライブラリとして、前記識別情報を含むメッセージの送信処理を行うアクセスライブラリを生成するライブラリ生成手段と、
前記アクセスライブラリから受信したメッセージに含まれる識別情報に基づき、当該識別情報に予め対応付けられた前記サーバアプリケーションの業務に対する指示を行うアクセスインタフェースを生成するインタフェース生成手段と
を備えることを特徴とするアクセス処理手段開発支援装置。
【請求項２】
前記アクセス処理手段開発支援装置は、
前記サーバアプリケーションに対し、予め設定された業務処理を要求するメッセージの送信処理が定義されたアクセスライブラリのテンプレートを格納するライブラリテンプレート格納手段と、
予め設定された前記サーバアプリケーションの業務についての指示処理が定義されたアクセスインタフェースのテンプレートを格納するインタフェーステンプレート格納手段と
を備えることを特徴とする請求項１に記載のアクセス処理手段開発支援装置。
【請求項３】
前記ライブラリ生成手段は、前記ライブラリテンプレート格納手段からテンプレートを取得し、取得したテンプレートにおける前記メッセージ送信処理の定義に含まれる業務処理名を示す記述部分を、前記識別情報を用いた業務処理名に変換する手段を備え、
前記インタフェース生成手段は、前記インタフェーステンプレート格納手段からテンプレートを取得し、取得したテンプレートにおける前記業務指示処理の定義に含まれる業務処理名を示す記述部分を、前記識別情報を用いた業務処理名に変換する手段を備えることを特徴とする請求項２に記載のアクセス処理手段開発支援装置。
【請求項４】
前記アクセス処理手段開発支援装置は、前記複数のクライアントに対して、ネットワークを介して接続されるものとし、
前記各クライアントからクライアント情報の送信を受付け、前記識別情報生成手段の生成した識別情報とともに格納するクライアント情報格納手段と、
前記ライブラリ生成手段の生成したアクセスライブラリを、前記各クライアントからの指示に応じてダウンロード可能とする手段と
を備えることを特徴とする請求項１〜３のいずれかに記載のアクセス処理手段開発支援装置。
【請求項５】
ネットワークを介して接続されたクライアントのクライアントアプリケーションからの業務処理要求に応じて業務処理を行い、処理結果を前記クライアントに送信するサーバアプリケーションのアクセス処理プログラムであって、
前記サーバアプリケーションは、
前記クライアントアプリケーションに備えられたアクセスライブラリから前記クライアントを識別する識別情報を含むメッセージの送信を受付け、当該メッセージに応じて、前記識別情報に予め対応付けられたサーバアプリケーションの業務の指示処理を行うアクセスインタフェースを備えることを特徴とするアクセス処理プログラム。
【請求項６】
前記アクセスインタフェースは、
前記指示処理の処理名が、前記識別情報を用いて定義されたことを特徴とする請求項５に記載のアクセス処理プログラム。
【請求項７】
前記アクセスインタフェースは、前記メッセージに含まれる識別情報に基づきアクセスログ情報を出力する手段をさらに備えることを特徴とする請求項５又は６に記載のアクセス処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クライアントサーバシステムにおいて、クライアントからのアクセスを許可するアクセス処理手段の開発支援装置及び生成されたアクセス処理手段に関し、特に、クライアントに対するアクセス許可を容易に行うことのできるアクセス処理手段に関する。
【０００２】
【従来の技術】
近年、インターネットやイントラネット等のネットワークを介したクライアントサーバシステムが広く用いられている。ここで、クライアントサーバシステムとは、サーバが提供するサービスに対して、クライアントが処理を依頼し、その結果を取得するシステムを示す。
このようなクライアントサーバシステムに関しては、従来より、サーバ側に備えられたアプリケーションを構成する各プログラムの開発方法及び開発支援装置が公知となっている（例えば、特許文献１参照。）。
【０００３】
【特許文献１】
特開２００３−０１５８７０号公報（第５−７，１２頁、図１，１５）
【０００４】
前記特許文献１に記載の発明では、一般的なクライアントサーバシステムにおけるアプリケーションとして、ユーザ名（ＩＤ）及びパスワードの情報に基づきユーザ認証を行う処理を、業務処理クラスに記述する構成が記載されている。
【０００５】
【発明が解決しようとする課題】
しかし、厳密なユーザ認証を必要とせず、特定のクライアントからのアクセスであることがある程度認識できれば良いような場合には、ＩＤ，パスワードを用いた認証処理はユーザにとって煩雑なものとなるという問題があった。
例えば、同一環境にて同一モジュールを開発する際に用いられるＷｅｂアプリケーション等では、同一の開発グループによるアクセスであることが確認できれば、個別のユーザ認証までは必要としない場合がある。この場合には、認証処理を厳密に行うよりも、アクセスの際のＩＤ，パスワードの入力の負担を無くすことにより開発作業支援を行うことが重要となるが、特許文献１に記載の発明では、このような認証処理の簡易化は考慮されていなかった。
特にクライアントに備えられたクライアントアプリケーションにおいて、Ｗｅｂアプリケーションの提供するサービスを利用する場合に認証処理を必要とすると、迅速な処理を行うことができないという問題があった。
【０００６】
本発明は前記課題を解決するためのものであり、Ｗｅｂアプリケーションへのアクセスを行ったクライアントの識別を可能とするとともに、アクセスの際におけるＩＤ等の入力を不要とすることのできるＷｅｂアプリケーションのアクセス処理手段の開発支援装置及びアクセス処理プログラムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
前記課題を解決するため本発明は、サーバアプリケーションに備えられたアクセス処理手段として、ネットワークを介して接続されたクライアントアプリケーションからのアクセスを識別可能とするアクセス処理手段の開発支援装置であって、各クライアントを識別する識別情報を生成する識別情報生成手段と、各クライアントアプリケーションに備えられるアクセスライブラリとして、前記識別情報を含むメッセージを送信する処理を行うアクセスライブラリを生成するライブラリ生成手段と、前記アクセスライブラリから受信したメッセージに含まれる識別情報に基づき、当該識別情報に予め対応付けられた前記サーバアプリケーションの業務に対する指示を行うアクセスインタフェースを生成するインタフェース生成手段とを備えることを特徴とする。
また、前記アクセス処理手段開発支援装置は、前記サーバアプリケーションに対し、予め設定された業務処理を要求するメッセージの送信処理が定義されたアクセスライブラリのテンプレートを格納するライブラリテンプレート格納手段と、予め設定された前記サーバアプリケーションの業務についての指示処理が定義されたアクセスインタフェースのテンプレートを格納するインタフェーステンプレート格納手段とを備えることを特徴とする。
また、前記ライブラリ生成手段は、前記ライブラリテンプレート格納手段からテンプレートを取得し、取得したテンプレートにおける前記メッセージ送信処理の定義に含まれる業務処理名を示す記述部分を、前記識別情報を用いた業務処理名に変換する手段を備え、前記インタフェース生成手段は、前記インタフェーステンプレート格納手段からテンプレートを取得し、取得したテンプレートにおける前記業務指示処理の定義に含まれる業務処理名を示す記述部分を、前記識別情報を用いた業務処理名に変換する手段を備えることを特徴とする。
また、前記アクセス処理手段開発支援装置は、前記複数のクライアントに対して、ネットワークを介して接続されるものとし、前記各クライアントからクライアント情報の送信を受付け、前記識別情報生成手段の生成した識別情報とともに格納するクライアント情報格納手段と、前記ライブラリ生成手段の生成したアクセスライブラリを、前記各クライアントからの指示に応じてダウンロード可能とする手段とを備えることを特徴とする。
【０００８】
また、ネットワークを介して接続されたクライアントのクライアントアプリケーションからの業務処理要求に応じて業務処理を行い、処理結果を前記クライアントに送信するサーバアプリケーションのアクセス処理手段であって、前記サーバアプリケーションは、前記クライアントアプリケーションに備えられたアクセスライブラリから前記クライアントを識別する識別情報を含むメッセージの送信を受付け、当該メッセージに応じて、前記識別情報に予め対応付けられたサーバアプリケーションの業務の指示処理を行うアクセスインタフェースを備えることを特徴とする。
また、前記アクセスインタフェースは、前記指示処理の処理名が、前記識別情報を用いて定義されたことを特徴とする。
また、前記アクセスインタフェースは、前記メッセージに含まれる識別情報に基づきアクセスログ情報を出力する手段をさらに備えることを特徴とする。
【０００９】
【発明の実施の形態】
以下、本発明の実施の形態について図面に基づき説明する。
図１は、本発明の一実施の形態に係るアクセス処理手段を利用したＷｅｂサービスサーバによる、Ｗｅｂサービス提供システムの全体構成を示すブロック図である。
Ｗｅｂサービスサーバ１００は、アクセス処理手段の生成及びアクセス処理手段の制御を行うアクセス処理システム１１０と、Ｗｅｂサービスサーバ１００の提供するサービスを行う業務処理コンポーネント１２０と、サービスに必要な各種データを格納する業務処理データベース１３０とを備える。Ｗｅｂサービスサーバ１００は、複数のＷｅｂサービスクライアント１４０に対して、インターネット等のネットワーク１５０を介して接続される。Ｗｅｂサービスクライアント１４０は、Ｗｅｂサービスサーバ１００にアクセス可能なＷｅｂブラウザ１４１と、アプリケーション開発装置１４２とを備えるとともに、アクセスライブラリ１４３を使用して開発されたクライアントアプリケーション１４４を備える。
アクセス処理システム１１０は、クライアント要求制御装置１１１と、識別情報生成装置１１２と、ライブラリ生成装置１１３と、アクセスインタフェース制御装置１１４と、アクセスインタフェース１１５と、クライアント情報データベース１１６と、テンプレート保存装置１１７とを備える。
クライアント要求制御装置１１１は、Ｗｅｂサービスクライアント１４０からのアクセスを受付け、識別情報生成装置１１２，ライブラリ生成装置１１３，アクセスインタフェース制御装置１１４に、各生成処理等を行わせる。
識別情報生成装置１１２は、各クライアントと各サービスとの対応関係を識別するための識別情報を生成する。
ライブラリ生成装置１１３は、クライアント情報データベース１１６から識別情報を取得するとともに、テンプレート保存装置１１７からライブラリテンプレートを取得して、アクセスライブラリ１４３を生成する。
アクセスインタフェース制御装置１１４は、クライアント情報データベース１１６から識別情報を取得するとともに、テンプレート保存装置からインタフェーステンプレートを取得して、アクセスインタフェース１１５を生成し、生成したアクセスインタフェース１１５の制御を行う。
アクセスインタフェース１１５は、アクセスライブラリ１４３を使用したクライアントアプリケーション１４４からのアクセスを受付け、アクセスライブラリ１４３からの要求に応じて、業務処理コンポーネント１２０による処理結果を返信する。
クライアントアプリケーション１４４は、アプリケーション開発装置１４２により、アクセスライブラリ１４３を使用して生成され、クライアントアプリケーション１４４により、Ｗｅｂサービスサーバ１００の提供するサービスが利用可能となる。なお、クライアントアプリケーション１４４の生成は、Ｗｅｂサービスクライアント１４０の利用者により行われる。
【００１０】
図２は、クライアント情報データベース１１６を構成するクライアント情報テーブルのデータ構造を示す図である。
クライアント情報テーブル２００は、識別子２０１と、クライアントの利用するＷｅｂサービス名２０２と、クライアント情報としての名前２０３，住所２０４，電話番号２０５，メールアドレス２０６との各情報を有する。
識別子２０１は、識別情報生成装置１１２の生成する一意な情報を示す。一意な情報とは、例えば、各クライアントを識別するための一意な文字列や、数値のことであり、本実施の形態では、「ａｂｃｄｅ＋システム時刻」を識別子２０１として生成している。なお、本例では、システム時刻を簡略化して示している。
識別情報生成装置１１２の生成した識別子２０１は、特定のアクセスライブラリ１４３がＷｅｂサービスサーバ１００のアクセスインタフェース１１５に送信するメッセージに含まれるメソッド名としても使用する。
Ｗｅｂサービス名２０２は、Ｗｅｂサービスの利用申請の際にＷｅｂサービスクライアントがアクセスしたＵＲＬにより特定する。
名前２０３，住所２０４，電話番号２０５，メールアドレス２０６は、Ｗｅｂサービスの利用申請登録処理の際に入力された各情報を示す。
【００１１】
図３は、本実施の形態に係るアクセス処理システム１１０を用いたアクセスライブラリ１４３及びアクセスインタフェース１１５の生成処理を示す図である。
Ｗｅｂサービスクライアント１４０では、Ｗｅｂサービスサーバ１００の提供するサービスの利用申請画面を表示して、利用者によるクライアント情報の入力を受付け、Ｗｅｂサービスサーバ１００に送信する（ステップ３０１）。
Ｗｅｂサービスクライアント１４０から送信されたクライアント情報を受付けたＷｅｂサービスサーバ１００では、アクセス処理システム１１０を構成するクライアント要求制御装置１１１が、識別情報生成装置１１２を起動してクライアント情報を渡す。
識別情報生成装置１１２は、クライアント情報に対して付与する識別情報を生成して（ステップ３０２）、クライアント要求制御装置１１１は、識別情報生成装置１１２の生成した識別情報をクライアント情報とともにクライアント情報データベース１１６に格納する（ステップ３０３）。
クライアント要求制御装置１１１はライブラリ生成装置１１３を起動し、ライブラリ生成指示を行う。ライブラリ生成装置１１３はクライアント情報データベース１１６から識別情報を取得するとともに、テンプレート保存装置１１７からライブラリテンプレートを取得して、アクセスライブラリ１４３を生成する（ステップ３０４）。
クライアント要求制御装置１１１はアクセスインタフェース制御装置１１４を起動し、インタフェース生成指示を行う。インタフェース制御装置１１４は、クライアント情報データベース１１６から識別情報を取得するとともに、テンプレート保存装置１１７からインタフェーステンプレートを取得して、アクセスインタフェース１１５を生成し（ステップ３０５）、生成したアクセスインタフェース１１５を公開する（ステップ３０６）。
アクセスインタフェース１１５を公開した後、クライアント要求制御装置１１１は、ライブラリ生成装置１１３の生成したアクセスライブラリ１４３のダウンロード画面をＷｅｂサービスクライアント１４０のＷｅｂブラウザ１４１に表示させる（ステップ３０７）。
Ｗｅｂサービスクライアント１４０では、利用者によるダウンロード画面操作に応じて、アクセスライブラリ１４３のダウンロード処理を行い、処理を終了する（ステップ３０８）。
【００１２】
以下、本実施の形態の具体例として、ＳＯＡＰを利用した構成について説明する。ここで、ＳＯＡＰとは、Ｗ３Ｃ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ）が規定しているＷｅｂサービスでのデータ授受に利用できる規約である。
本実施の形態では、アクセスライブラリ１４３とアクセスインターフェース１１５との間でＳＯＡＰメッセージの送受信を行うこととなる。この場合に、ＳＯＡＰメッセージに含まれるメソッド名について、識別情報生成装置１１２の生成した識別情報を用いることにより、アクセスインタフェース１１５において、Ｗｅｂサービスサーバ１００にアクセスしたＷｅｂサービスクライアント１４０を識別可能とする。
この場合、データ通信はＳＯＡＰを使用するため、Ａｐａｃｈｅ  ＳＯＡＰというフリーのライブラリを使う。Ａｐａｃｈｅ  ＳＯＡＰとは、Ｊａｖａ（登録商標）でＳＯＡＰを使用するためのライブラリであり、伝聞データとしてのＸＭＬを生成する処理を行うものである。ＸＭＬは、インターネットやイントラネットなどのネットワークと親和性がよく、様々なプラットホーム間でデータ授受が可能であり、ＳＯＡＰと呼ばれる規約に従うことで、クライアントおよびサーバのアプリケーションが異なる企業であっても、データ授受が可能になる。なお、ＳＯＡＰメッセージの通信にはＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を利用する。
【００１３】
次に、図３に示す各処理における表示画面、具体例を説明する。
本実施の形態では、Ｗｅｂサービスクライアント１４０の利用者が、Ｗｅｂサービスの提供情報を公開するサイトから、希望するサービスを提供するＷｅｂサービスサーバ１００を見つけ、Ｗｅｂサービスサーバ１００に対して提供サービスの利用申請を行う。
図４は、Ｗｅｂサービスの提供情報を表示するＷｅｂサービス一覧表示画面を示す図である。
Ｗｅｂサービス一覧表示画面４００は、Ｗｅｂ上で公開されている各サービスについて、サービス名４０１，サービス内容４０２，提供メソッド４０３，ＩＤ４０４，Ｗｅｂサービスを提供するサーバのＵＲＬ４０５，提供サービスについて利用申請を行う際にアクセスするＵＲＬ４０６の各表示欄を有する。
Ｗｅｂサービス一覧表示画面４００に表示された各サービスの中から利用者により任意に選択されたサービスのＵＲＬ４０６にアクセスがされることにより、Ｗｅｂサービスサーバ１００のアクセス処理システム１１０が利用申請画面をＷｅｂサービスクライアント１４０のＷｅｂブラウザ１４１に表示させる。この場合、ＵＲＬ４０６にはリンクが貼られているものとしてもよい。
以下、利用するＷｅｂサービスとして、利用者が「Ｈｅｌｌｏ  Ｗｏｒｌｄ」という文字列を返すサービス名「Ｈｅｌｌｏ  Ｗｏｒｌｄ」に示すサービスを選択した場合について説明する。
【００１４】
図５は、図４においてサービス名「Ｈｅｌｌｏ  Ｗｏｒｌｄ」に示すサービスを提供する業務処理コンポーネント１２０のソースの例である。
本例では、Ｗｅｂサービスが提供するサービスは、Ｊａｖａ（登録商標）で実装されているものとし、Ｗｅｂサービスを提供する業務処理コンポーネント１２０は、１つのクラスで実装されているものとする。
ソース４００に含まれる行５０１は、「ＨｅｌｌｏＷｏｒｌｄＣｏｍｐｏｎｅｎｔ」というクラスを定義している。
行５０２は、Ｓｔｒｉｎｇ型を返す「ｓａｙＨｅｌｌｏＷｏｒｌｄ」メソッドを定義しており、具体的には、他のクラスに呼ばれたときに、「Ｈｅｌｌｏ  Ｗｏｒｌｄ」という文字列５０３を返す処理を定義する。
【００１５】
図６は、図４に示すＷｅｂサービス利用申請用のＵＲＬ４０６にアクセスがされたときに、Ｗｅｂサービスサーバ１００のアクセス処理システム１１０がＷｅｂサービスクライアント１４０のＷｅｂブラウザ１４１に表示させる利用申請画面の一例を示す図である。
利用申請画面６００は、提供するＷｅｂサービス名を表示するサービス名表示欄６０１と、クライアント情報としての氏名，住所，電話番号，メールアドレスを各情報を入力する入力欄６０２〜６０５と、利用申請ボタン６０６とを有し、利用者による各情報の入力及び利用申請ボタン６０６の操作に応じて入力内容をアクセス処理システム１１０に送信する。
【００１６】
図７は、アクセスライブラリを生成する際に用いられるソースのテンプレートの一例である。
テンプレート７００の行７０１は、Ａｐａｃｈｅ  ＳＯＡＰライブラリを使用するために必要なものである。
行７０２は、ＷＷＷ上のリソースを表す機能を持っているＪａｖａ（登録商標）のクラスＵＲＬ７０３を使用して、「Ｈｅｌｌｏ  Ｗｏｒｌｄ」と表示するＷｅｂサービスを提供しているＷｅｂサービスサーバ１００のＵＲＬ  「ｈｔｔｐ：／／ｗｗｗ．××××××．ｃｏ．ｊｐ／ｓｏａｐ／ｓｅｒｖｌｅｔ／ｒｐｃｒｏｕｔｅｒ」７０４を指すオブジェクトを生成する処理を示す。
行７０５は、Ａｐａｃｈｅ  ＳＯＡＰが提供しているＣａｌｌオブジェクトを生成する処理を示す。生成されたＣａｌｌオブジェクトは、ＳＯＡＰメッセージによりＷｅｂサービスサーバ１００のメソッドを呼び出す。
行７０６は、Ｃａｌｌオブジェクトに対して、Ｗｅｂサービスクライアント１４０が利用するＷｅｂサービスを識別するＩＤ「ｕｒｎ：ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」７０７を設定する処理を示す。行７０８は、Ｃａｌｌオブジェクトに対して、Ｗｅｂサービスクライアント１４０が利用するメソッドを設定する処理を示す。テンプレート７００では、メソッドが「＃ｍｅｔｈｏｄＮａｍｅ＃」７０９で示される。
行７１０は、Ｃａｌｌオブジェクトに直列化のスタイルを設定する処理を示す。直列化のスタイルの設定としては、オブジェクトをネットワークに通過させるためのＸＭＬのエンコード形式を決定する。
行７１１は、Ｗｅｂサービスサーバ１が提供しているＷｅｂサービスのメソッドの呼び出し処理を示す。「ｉｎｖｏｋｅ」メソッドの第１引数は行７０２で生成したＵＲＬオブジェクトを指定する。「ｉｎｖｏｋｅ」メソッドの第２引数は、空文字「“”」を指定する。「ｉｎｖｏｋｅ」メソッドの第２引数はＳＯＡＰ  ＨＴＴＰリクエストの意図を指示するために使用される。空文字の場合、ＳＯＡＰメッセージの意図がＨＴＴＰリクエストによって指示されることを意味する。「ｉｎｖｏｋｅ」メソッドの処理結果は、変数「ｒｅｓｐ」７１２に代入される。
行７１３は、Ｗｅｂサービスサーバ１００の実行結果を「ｇｅｔＲｅｔｕｒｎＶａｌｕｅ」メソッド７１４で戻り値を取得する処理を示す。行７１５は、行７１３で取得した戻り値を、「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」クラスの「ｓａｙＨｅｌｌｏＷｏｒｌｄ」メソッドを呼び出したクラスに戻す処理を示す。
なお、図７の例では、クラスが１つで簡単なメソッドしかないが、実際には複数のクラス，メソッドがあり、様々な機能を持つ。
【００１７】
図８は、テンプレート７００を用いて生成されたアクセスライブラリ１４３のソースの一例を示す図である。
ライブラリソース８００では、テンプレート７００の行７０８に含まれる「＃ｍｅｔｈｏｄＮａｍｅ＃」７０９が文字列８０１に変換されている。文字列８０１は、識別情報生成装置１１３の生成した識別情報を用いたメソッド名を示す。
テンプレート７００からアクセスライブラリ１４３を生成する方法としては、ライブラリ生成装置１１３が、テンプレート７００の上から１行ずつ検索し、行７０８に含まれる「＃ｍｅｔｈｏｄＮａｍｅ＃」７０９を見つけたら、「＃ｍｅｔｈｏｄＮａｍｅ＃」７０９を文字列８０１に変換する。ライブラリ生成装置１１３は、文字列８０１に変換して生成したライブラリソース８００をコンパイルし、ライブラリ化する。本実施の形態では、ＪＤＫ（Ｊａｖａ（登録商標）  Ｄｅｖｅｌｏｐｍｅｎｔ  Ｋｉｔ）のｊａｖａｃコマンド「ｊａｖａｃ  ＨｅｌｌｏＷｏｒｌｄＳｏａｐ．ｊａｖａ」でライブラリ化するバッチ処理を行う。
この場合、生成したアクセスライブラリ１４３のソースファイル名は「ＨｅｌｌｏＷｏｒｌｄＳｏａｐ．ｊａｖａ」とし、ライブラリ名は「ＨｅｌｌｏＷｏｒｌｄＳｏａｐ．ｊａｒ」とする。
以上の構成により、アクセスライブラリ１４３は、クライアントアプリケーション１４４からの「ｓａｙＨｅｌｌｏＷｏｒｌｄ」メソッドの呼び出しに応じて、アクセスインタフェース１１５に対し「ａｂｃｄｅ１２３４５」メソッドを呼び出すＳＯＡＰメッセージを送信する。従って、「ｓａｙＨｅｌｌｏＷｏｒｌｄ」メソッドは、Ｗｅｂサービスクライアント１４０におけるクライアントアプリケーション１４４の実装時に意識して使用されるメソッドとなるが、クライアントアプリケーション１４４が実際に呼び出すメソッドは「ａｂｃｄｅ１２３４５」となる。
【００１８】
図９は、アクセスインタフェースを生成する際に用いられるソースのテンプレートの一例である。
テンプレート９００の行９０１は、アクセスインタフェース１１５のメソッド名を示す。
行９０２は、実行したメソッドをアクセスログとして標準出力に出力する。出力したアクセスログは、クライアントを識別するために利用される。
行９０３は、Ｗｅｂサービスサーバ１００の業務処理コンポーネント１２０のオブジェクトを生成する。
行９０４は、行９０３の生成するオブジェクトのメソッド「ｓａｙＨｅｌｌｏＷｏｒｌｄ」を呼び出す。
【００１９】
図１０は、テンプレート９００を用いて生成されたアクセスインタフェース１１５のソースの一例を示す図である。
インタフェースソース１０００では、テンプレート９００の行９０１，９０２に含まれる「＃ｍｅｔｈｏｄＮａｍｅ＃」が文字列１００１，１００２に変換されている。文字列１００１は、識別情報生成装置１１３の生成した識別情報に基づくメソッド名を示し、ライブラリソース８００に含まれる文字列８０１に対応する。
以上の構成により、アクセスインタフェース１１５は、アクセスライブラリ１４３から送信されたＳＯＡＰメッセージに含まれる「ａｂｃｄｅ１２３４５」メソッドの呼び出しに応じて、業務処理コンポーネント１２０に対し「ｓａｙＨｅｌｌｏＷｏｒｌｄ」メソッドの呼び出しを行う。
テンプレート９００からアクセスインタフェース１１５を生成する方法としては、インタフェース制御装置１１４が、テンプレート９００の上から１行ずつ検索し、行９０１，９０２に含まれる「＃ｍｅｔｈｏｄＮａｍｅ＃」を見つけたら、「＃ｍｅｔｈｏｄＮａｍｅ＃」を文字列１００１，１００２に変換する。インタフェース制御装置１１４は、文字列１００１，１００２に変換して生成したインタフェースソース１０００を、ＪＤＫのｊａｖａｃコマンド「ｊａｖａｃ  ＨｅｌｌｏＷｏｒｌｄＳｏａｐ．ｊａｖａ」でコンパイルするバッチ処理を行う。コンパイルして生成した「ＨｅｌｌｏＷｏｒｌｄＳｏａｐ．ｃｌａｓｓ」ファイルをアクセスインタフェース１１５として、Ｗｅｂサービスサーバ１００に公開する。
アクセスインタフェース１１５の公開とは、アクセスインタフェース１１５をＷｅｂサービスサーバ１００に認識させるために、サービスとして登録を行うことである。例えば、Ａｐａｃｈｅ  ＳＯＡＰをダウンロードして解凍したフォルダのｗｅｂａｐｐｓフォルダの下にあるｓｏａｐ．ｗａｒファイルをＴｏｍｃａｔのフォルダの下にあるｗｅｂａｐｐｓフォルダの下にコピーすることでＡｐａｃｈｅ  ＳＯＡＰを利用可能とする。ここで、ＴｏｍｃａｔとはフリーのＷｅｂアプリケーションサーバである。次に、コンパイルして生成した「ＨｅｌｌｏＷｏｒｌｄＳｏａｐ．ｃｌａｓｓ」ファイルをＴｏｍｃａｔのフォルダの下にあるｗｅｂａｐｐｓ￥ｓｏａｐ￥ＷＥＢ−ＩＮＦ￥ｃｌａｓｓｅｓの下にコピーする。次に、Ｗｅｂサービスサーバ１００にアクセスインタフェース１１５をサービスとして登録する。以上の処理を行うことでアクセスインタフェース１１５を公開することができる。
【００２０】
図１１は、アクセスインタフェース１１５の公開に関して登録されたサービスの設定を示す図であり、ＩＤ１１０１，メソッド名１１０２，クラス名１１０３を有する。
この場合、メソッド名１１０２としては、識別情報を用いた文字列が示される。
【００２１】
図１２は、Ｗｅｂサービスクライアント１４０において、Ｗｅｂブラウザ１４１に表示されるアクセスライブラリのダウンロード画面の一例を示す図である。
ダウンロード画面１２００は、ダウンロードボタン１２０１を有し、Ｗｅｂサービスクライアント１４０は、利用者によるダウンロードボタン１２０１の操作に応じて、アクセスライブラリ１４３のダウンロード処理を行う。
アクセスライブラリ１４３のダウンロード処理を行った後、Ｗｅｂサービスクライアント１４０では、利用者により、アクセスライブラリ１４３を利用したクライアントアプリケーション１４４の作成処理が、Ｗｅｂサービスアプリケーション作成支援装置１４２を用いて行われる。
【００２２】
利用者により作成されたクライアントアプリケーション１４４では、アクセスライブラリ１４３の送信するメッセージにより、Ｗｅｂサービスサーバ１００によるＷｅｂサービスの提供を受けることが可能となる。
本実施の形態では、Ｗｅｂサービスクライアント１４０の利用者による処理操作に応じて、クライアントアプリケーション１４４がアクセスライブラリ１４３の送信するメッセージにより、Ｗｅｂサービスサーバ１００から必要な業務処理の提供を受けることとなる。
図１３は、Ｗｅｂサービスクライアント１４０のクライアントアプリケーション１４４からの処理要求に応じて、Ｗｅｂサービスの提供を行う処理として、アクセスライブラリ１４３及びアクセスインタフェース１１５を用いたＷｅｂサービス提供処理手順を示すフローチャートである。
Ｗｅｂサービスクライアント１４０では、アクセスライブラリ１４３が、クライアントアプリケーション１４４の処理要求に応じて、Ｗｅｂサービスサーバ１００に対しＳＯＡＰメッセージを送信する（ステップ１３０１）。ＳＯＡＰメッセージの送信では、Ｃａｌｌオブジェクトが生成され、識別子で示されたメソッドの呼び出しが行われる。
Ｗｅｂサービスサーバ１００では、アクセスインタフェース制御装置１１４により起動されたアクセスインタフェース１１５が、ＳＯＡＰメッセージを取得し、メソッドの実行として、業務処理コンポーネント１２０のオブジェクトを生成し、メソッドを呼び出す（ステップ１３０２）。この場合、アクセスインタフェース制御装置１１４は、受信したＳＯＡＰメッセージにより指定されたＵＲＩ及びメソッド（識別子）に基づき、対応するアクセスインタフェース１１５を識別して起動する。
業務処理コンポーネント１２０は所定の業務処理を実行し、アクセスインタフェース１１５は処理結果を取得する（ステップ１３０３）。
アクセスインタフェース１１５は、取得した処理結果を含むＳＯＡＰメッセージをアクセスライブラリ１４３に送信するとともに、実行したメソッドの示す識別子をアクセスログとして格納する（ステップ１３０４，１３０５）。
クライアントアプリケーション１４４のアクセスライブラリ１４３は受信したＳＯＡＰメッセージに含まれる処理結果を取得し（ステップ１３０６）、当該処理結果をクライアントアプリケーション１４４に渡して処理を終了する。
【００２３】
図１４は、利用者により作成されるクライアントアプリケーション１４４のソースの一例を示す図である。
アプリケーションソース１４００の行１４０１は、Ｗｅｂサービスクライアント１４０がダウンロードしたアクセスライブラリ１４３に含まれるクラス「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」のインポートを示す。
行１４０２は、作成されるクライアントアプリケーション１４４を示すクラス「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰＣｌｉｅｎｔ」を宣言している。
行１４０３は、クラス「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」が提供しているオブジェクト「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」を生成する処理を示す。
行１４０４は、行１４０３の処理で生成したオブジェクト「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」のメソッド「ｓａｙＨｅｌｌｏＷｏｒｌｄ」を呼び出す処理を示す。但し、本実施の形態では、アクセスライブラリ１４３により、アクセスインタフェース１１５のメソッド「ａｂｏｄｅ１２３４５」が呼び出されることとなる。
以上のソース１４００を、ＪＤＫのｊａｖａｃコマンドを使用させることによりコンパイルする。この場合、クライアントアプリケーション１４４のソースファイル名を「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰＣｌｉｅｎｔ．ｊａｖａ」として、利用者にコマンドプロンプトなどで「ｊａｖａｃ  ＨｅｌｌｏＷｏｒｌｄＳｏａｐＣｌｉｅｎｔ．ｊａｖａ」と入力させ、「ＨｅｌｌｏＷｏｒｌｄＣｌｉｅｎｔ．ｃｌａｓｓ」ファイルを生成する。
クライアントアプリケーション１４４の実行では、コマンドプロンプトなどで「ｊａｖａ  ＨｅｌｌｏＷｏｒｌｄＳｏａｐＣｌｉｅｎｔ」と入力させる。
【００２４】
クライアントアプリケーション１４４が実行された場合、クライアントアプリケーション１４４の処理に応じてアクセスライブラリ１４３は、アクセスインタフェース１１５との間でＳＯＡＰメッセージの送受信を行うことにより、Ｗｅｂサービスの提供を受ける。
図１５は、図８のライブラリソース８００に示すアクセスライブラリ１４３が送信するＳＯＡＰメッセージ本文の一例を示す図である。
ＳＯＡＰメッセージ１５００の本文１５０１には、指定されたＵＲＩ「ＨｅｌｌｏＷｏｒｌｄＳＯＡＰ」において、アクセスインタフェース１１５のメソッド「ａｂｃｄｅ１２３４５」を呼び出す処理を示す記述が含まれる。
【００２５】
図１６は、図１０のインタフェースソース１０００に示すアクセスインタフェース１１５が送信するＳＯＡＰメッセージ本文の一例を示す図である。
ＳＯＡＰメッセージ１６００の本文１６０１には、アクセスインタフェース１１５のメソッド「ａｂｃｄｅ１２３４５」の処理結果として表示する文字列「Ｈｅｌｌｏ  Ｗｏｒｌｄ」が含まれる。この場合の処理結果は、業務処理コンポーネント１２０のメソッド「ｓａｙＨｅｌｌｏｗＷｏｒｌｄ」の実行結果を示す。
（なお、以上の説明において比較対象となる従来のＳＯＡＰ技術の例については、「田中宏和、「ＪａｖａでＨｅｌｌｏｗ  Ｗｏｒｌｄ！」「ＳＯＡＰ編」、２００２年１２月０１日、インターネット＜ＵＲＬ  ：  ｈｔｔｐ：／／ｗｗｗ．ｈｅｌｌｏｈｉｒｏ．ｃｏｍ／ｓｏａｐ．ｈｔｍ＞」を参照。）
【００２６】
以上の例に示すように、本実施の形態では、アクセスライブラリ１４３とアクセスインタフェース１１５との間では、生成された識別子を用いたメソッド名により処理が行われるが、クライアントアプリケーション１４４及び業務処理コンポーネント１２０の間では、業務処理コンポーネント１２０のメソッド名で処理が定義される。
【００２７】
図１７は、Ｗｅｂサービスサーバ１００の管理するアクセスログの一例を示す図である。
アクセスログ一覧１７００には、実行された各メソッド名を示すアクセスログ１７０１が示される。
Ｗｅｂサービスサーバ１００では、アクセスインタフェース１１５により格納されたアクセスログ１７０１に示される識別子をキーとして、クライアント情報データベース１１６を構成するクライアント情報テーブル２００から、各クライアント情報を取得することにより、Ｗｅｂサービスの提供要求を行ったサービスクライアントを識別することが可能となる。なお、ここでは、アクセスログを標準出力に出力しているが、実際にはファイルやデータベースに出力する。
【００２８】
以上のように、本実施の形態におけるアクセス処理手段の開発支援装置では、各Ｗｅｂサービスクライアント１４０と各サービスとの組合せを示す識別情報を生成し、アクセス処理手段として、前記識別情報を含むＳＯＡＰメッセージの送受信を行うアクセスライブラリ１４３及びアクセスインタフェース１１５を生成することとしている。
従って、アクセスライブラリ１４３とアクセスインタフェース１１５との間で識別情報を含むＳＯＡＰメッセージを送受信することにより、クライアントアプリケーション１４４に対して、認証処理を行うこと無く業務処理コンポーネント１２０によるサービスの提供を行うことができるとともに、前記識別情報によりクライアントの識別を可能とすることができる。この場合、アクセスライブラリ１４３がアクセスインタフェース１１５に対して呼び出すメソッド名として前記識別情報を用いることとしたため、ＳＯＡＰメッセージにおいて前記識別情報を容易に含めることができ、各クライアントの識別も容易なものとすることができる。即ち、ＳＯＡＰを利用した従来の構成では、アクセスライブラリ１４３により、業務処理コンポーネント１２０のメソッドを直接呼び出す構成となるため、メソッド名により各クライアントの識別を行うことは出来ないが、本実施の形態のように、アクセスインタフェース１１５を介してアクセスを行い、アクセスインタフェース１１５に対して呼び出すメソッドとしてクライアントの識別情報を示すメソッド名を用いることにより、メソッド名により各クライアントの識別が可能となる。
また、識別情報を用いたメソッド名は、アクセスライブラリ１４３及びアクセスインタフェース１１５の間で送受信されるＳＯＡＰメッセージでのみ利用されるため、クライアントアプリケーション１４４及び業務処理コンポーネント１２０では、前記識別情報を意識すること無く実装を行うことが可能となる。
また、アクセスライブラリ１４３からのアクセスに対し、メソッド名として記述された識別情報を取得して、アクセスログを出力することとしたので、アクセスログを確認することにより、アクセスを行ったクライアントを容易に識別することが可能となる。
また、Ｗｅｂサービスクライアント１４０からの利用申請の際に取得したクライアント情報に基づき、生成した識別情報とともに格納して管理することとしたので、アクセスログに基づき、Ｗｅｂサービスを利用したクライアントについての詳細情報を容易に確認することができる。
また、各サービス毎に予め生成されたテンプレートに基づき、アクセスライブラリ１４３及びアクセスインタフェース１１５を生成することとしたので、各生成処理を容易に行うことが可能となる。
また、各アクセスライブラリ１４３毎に対応するアクセスインタフェース１１５を生成することとしたので、各クライアント毎に業務処理をカスタマイズした場合であっても、アクセスライブラリ１４３を変更すること無く、アクセスインタフェース１１５の変更のみで対応することが可能となる。
また、Ｗｅｂサービスクライアント１４０からの利用申請に応じて、アクセスライブラリ１４３を生成してダウンロード可能としたので、Ｗｅｂサービスクライアント１４０の利用者は、ダウンロードしたアクセスライブラリ１４３を使用してクライアントアプリケーション１４４を開発するだけで、Ｗｅｂサービスサーバ１００からＷｅｂサービスの提供を受けることが可能となる。
【００２９】
なお、本発明は、前記実施の形態の構成に限定されるものではなく、同様に構成可能な種々のクライアントサーバシステムに適用することができる。
また、必ずしもＳＯＡＰを利用することは必須ではなく、同様の機能を有するものであれば、他の技術を用いることとしてもよい。即ち、クライアントに備えられたアプリケーションのアクセスライブラリと、サーバに備えられたアクセスインタフェースとの間で、各クライアントを識別可能な識別情報に基づき業務処理指示及び業務処理結果の送受信を行うことができれば、他の構成により実現することとしてもよい。
また、Ｗｅｂサービスサーバの業務処理コンポーネントが行う業務処理において、他のＷｅｂサービスサーバからＷｅｂサービスの提供を受けることとしてもよい。この場合には、Ｗｅｂサービスサーバが他のＷｅｂサービスサーバに対するクライアントとして、前記実施の形態に係るアクセス処理手段を備えさせることとしてもよい。
また、前記実施の形態では、Ｗｅｂサービスクライアントの利用者によりアプリケーションの開発を行わせることとしたが、アプリケーションの開発者と利用者とが異なるものとしてもよい。また、一人の利用者の管理の元に複数の利用者にアプリケーションを利用させる場合にも適用可能であるが、この場合は、ユーザＩＤ，パスワードを複数人で共有する場合と同様に、Ｗｅｂサービスサーバ上では同一人（同一クライアント）による利用として認識されることとなる。また、同一のアクセスライブラリを用いて、複数のアプリケーションを開発することとしてもよい。
【００３０】
【発明の効果】
以上のように、本発明によれば、Ｗｅｂサービスクライアントにおけるアプリケーション利用者に対して、ユーザＩＤ，パスワード等による認証処理を意識させること無く、容易にＷｅｂサービスサーバによるＷｅｂサービスを利用させることができるとともに、ＷｅｂサービスサーバではＷｅｂサービスの提供を受けたクライアントの識別を行うことが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係るアクセス処理手段を備えたＷｅｂサービス提供システムの全体構成を示すブロック図である。
【図２】クライアント情報テーブルのデータ構造の一例を示す図である。
【図３】本発明の一実施の形態に係る開発支援装置によるアクセス処理手段の生成処理を示すフローチャートである。
【図４】Ｗｅｂサービス情報一覧表示画面の一例を示す図である。
【図５】Ｗｅｂサービスとして公開する業務処理コンポーネントのソースの一例を示す図である。
【図６】Ｗｅｂサービスクライアント情報入力画面の一例を示す図である。
【図７】アクセスライブラリのテンプレートの一例を示す図である。
【図８】本発明の一実施の形態に係る開発支援装置により生成されたアクセスライブラリのソースの一例を示す図である。
【図９】アクセスインタフェースのテンプレートの一例を示す図である。
【図１０】本発明の一実施の形態に係る開発支援装置により生成されたアクセスインタフェースのソースの一例を示す図である。
【図１１】Ｗｅｂサービスにおけるアクセスインタフェースの設定情報の一例を示す図である。
【図１２】Ｗｅｂサービスクライアントに表示するライブラリダウンロード画面の一例を示す図である。
【図１３】本発明の一実施の形態に係るアクセス処理プログラムによるＷｅｂサービスの提供処理を示すフローチャートである。
【図１４】Ｗｅｂサービスクライアントの利用者により開発されたアプリケーションのソースの一例を示す図である。
【図１５】ＷｅｂサービスクライアントからＷｅｂサービスサーバへ送信するＳＯＡＰのメッセージの一例を示す図である。
【図１６】ＷｅｂサービスサーバからＷｅｂサービスクライアントへ送信するＳＯＡＰのメッセージの一例を示す図である。
【図１７】Ｗｅｂサービスサーバが生成するアクセスログの一例を示す図である。
【符号の説明】
１００  Ｗｅｂサービスサーバ、１１０  アクセス処理システム、１１１  クライアント要求制御装置、１１２  識別情報生成装置、１１３  ライブラリ生成装置、１１４  アクセスインタフェース制御装置、１１５  アクセスインタフェース、１１６  クライアント情報データベース、１１７  テンプレート保存装置、１２０  業務処理コンポーネント、１３０  業務処理データベース、１４０  Ｗｅｂサービスクライアント、１４１  Ｗｅｂブラウザ、１４２  アプリケーション開発装置、１４３  アクセスライブラリ、１４４  クライアントアプリケーション。
【図１】
2004272303.tif 000003
【図２】
2004272303.tif 000004
【図３】
2004272303.tif 000005
【図４】
2004272303.tif 000006
【図５】
2004272303.tif 000007
【図６】
2004272303.tif 000008
【図７】
2004272303.tif 000009
【図８】
2004272303.tif 000010
【図９】
2004272303.tif 000011
【図１０】
2004272303.tif 000012
【図１１】
2004272303.tif 000013
【図１２】
2004272303.tif 000014
【図１３】
2004272303.tif 000015
【図１４】
2004272303.tif 000016
【図１５】
2004272303.tif 000017
【図１６】
2004272303.tif 000018
【図１７】
2004272303.tif 000019