(57)【要約】【課題】サービス利用開始時の遅延を抑止する。【解決手段】部品受信手段１ｂは、部品要求送信手段１ａが送信した部品要求に応じてサーバ２から、サーバ２が提供するサービスＡ，Ｂ，Ｃ，Ｄそれぞれの処理に用いるプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４を受信する。また、部品受信手段１ｂは、サービスＡ，Ｂ，Ｃ，Ｄとプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４との対応付けを定義した環境情報を受信し、プログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４と共に部品記憶手段１ｃに格納する。実行制御手段１ｅは、サービス要求取得手段１ｄを介してサービスＡの利用を要求するサービス要求を受け付けると、サービスＡの識別情報を含む実行指示を出力する。実行手段１ｆは、この実行指示と部品記憶手段１ｃに記憶された環境情報とに基づいて、部品記憶手段１ｃに記憶されたプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４のうちサービスＡに対応するプログラム部品Ｍ１を実行する。【選択図】図１
2010097543.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
サーバが提供する複数のサービスの処理に用いる複数のプログラム部品を要求する部品要求を前記サーバに送信する部品要求送信手段、
前記複数のプログラム部品と前記複数のサービスの識別情報との対応付けを定義した環境情報を前記複数のプログラム部品と共に記憶する部品記憶手段、
前記部品要求送信手段が送信した前記部品要求に応じて前記サーバから前記複数のプログラム部品と前記環境情報とを受信し、受信した前記複数のプログラム部品と前記環境情報とを前記部品記憶手段に格納する部品受信手段、
前記複数のサービスのうちの少なくとも１つのサービスの利用を要求するサービス要求を受け付けると、要求対象の前記サービスの前記識別情報を含む実行指示を出力する実行制御手段、
前記実行制御手段が出力した前記実行指示と前記部品記憶手段に記憶された前記環境情報とに基づいて、前記部品記憶手段に記憶された複数のプログラム部品のうち、前記実行指示に含まれる前記識別情報に対応するプログラム部品を実行する実行手段、
として機能させることを特徴とするサービス支援プログラム。
【請求項２】
前記コンピュータを、更に、前記サービス要求を受け付けるためのユーザの操作入力を受け付けるインタフェースを生成するブラウザ手段として機能させ、
前記部品要求送信手段は、前記ブラウザ手段が前記インタフェースを生成した後に、前記部品要求を前記サーバに送信する、
ことを特徴とする請求項１記載のサービス支援プログラム。
【請求項３】
前記部品要求送信手段は、前記コンピュータの起動が完了した後に、前記部品要求を前記サーバに送信することを特徴とする請求項１記載のサービス支援プログラム。
【請求項４】
前記環境情報は、前記複数のサービスそれぞれのインタフェースとなるウィンドウの生成を制御するためのウィンドウ制御情報を含んでおり、
前記実行手段は、前記部品記憶手段に記憶された前記環境情報に含まれる前記ウィンドウ制御情報に基づいて前記サービス要求対象の前記プログラム部品を実行し、前記サービスの前記ウィンドウを生成する、
ことを特徴とする請求項１乃至３記載のサービス支援プログラム。
【請求項５】
前記ウィンドウ制御情報は、前記ウィンドウを生成する際に、既存のウィンドウの形態を制御可能とするための設定情報を含んでおり、
前記実行手段は、前記部品記憶手段に記憶された前記環境情報に含まれる前記ウィンドウ制御情報に基づいて、前記ウィンドウを生成する際に前記既存のウィンドウの形態を制御する、
ことを特徴とする請求項４記載のサービス支援プログラム。
【請求項６】
前記ウィンドウ制御情報は、前記ウィンドウのサイズの変更操作を受け付け可能とするための設定情報を含んでおり、
前記実行手段は、前記部品記憶手段に記憶された前記環境情報に含まれる前記ウィンドウ制御情報に基づいて、前記ウィンドウを前記サイズの変更操作を受け付け可能に生成する、
ことを特徴とする請求項４または５記載のサービス支援プログラム。
【請求項７】
前記複数のプログラム部品は、前記複数のサービスの処理を実現する複数のアプレットを実行するためのコンポーネントであることを特徴とする請求項１乃至６記載のサービス支援プログラム。
【請求項８】
サーバが提供する複数のサービスの利用を支援するコンピュータのサービス支援方法であって、
部品要求送信手段が、所定の部品取得指示を受け付けると、前記複数のサービスの実行に用いる複数のプログラム部品を要求する部品要求を前記サーバに送信し、
部品受信手段が、前記部品要求送信手段が送信した前記部品要求に応じて前記サーバから前記複数のプログラム部品を受信し、受信した前記複数のプログラム部品を前記複数のサービスそれぞれの識別情報に対応付けて部品記憶手段に格納し、
実行制御手段が、前記複数のサービスのうちの少なくとも１つのサービスの利用を要求するサービス要求を受け付けると、要求対象の前記サービスの前記識別情報を含む実行指示を出力し、
実行手段が、前記実行制御手段が出力した前記実行指示と前記部品記憶手段に記憶された前記環境情報とに基づいて、前記部品記憶手段に記憶された複数のプログラム部品のうち、前記実行指示に含まれる前記識別情報に対応するプログラム部品を実行する、
ことを特徴とするサービス支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービス支援プログラムおよびサービス支援方法に関し、特に、サーバが提供するサービスの利用を支援するサービス支援プログラムおよびサービス支援方法に関する。
【背景技術】
【０００２】
従来、ウェブ（Web）サーバが提供するサービスをクライアントのコンピュータで利用するウェブシステムが普及している。ウェブシステムでは、ウェブサーバとコンピュータとがインターネットやイントラネットのネットワークで接続される。
【０００３】
コンピュータは、ウェブサーバのサービスを利用するためのウェブブラウザを有している。ウェブブラウザは、ウェブサーバからサービスの利用に必要なＨＴＭＬ（Hyper Text Markup Language）文書や画像コンテンツ等のコンポーネントを取得する。そして、取得したコンポーネントに基づいて、サービスのインタフェースをユーザに提供する。ブラウザは、このインタフェースに基づいてユーザが入力するサービスへの要求を取得し、その内容をウェブサーバに送信する（例えば、特許文献１参照）。
【０００４】
ここで、サービスのコンポーネントとして利用可能なものには、アプレット（Applet）と呼ばれるウェブブラウザ上で実行可能なアプリケーションプログラムがある。
アプレットは、サービスの利用要求に応じて、その都度ウェブサーバからコンピュータにダウンロードされて実行される。アプレットを利用すると、コンピュータ側にサービスの処理を実行させることができる。例えば、アプレットによりウェブサーバとコンピュータとの間に確立するセッションの管理を支援する方法がある（例えば、特許文献２参照）。また、データベースサーバで稼動するデータベースの一部をコンピュータのキャッシュに格納し、アプレットによりキャッシュ上のデータベースにローカル接続して、更新内容をウェブサーバを介してデータベースサーバ側に同期させる方法がある（例えば、特許文献３参照）。
【特許文献１】特開２００３−２７１４８３号公報
【特許文献２】特開２００１−１８４３０６号公報
【特許文献３】特開２００７−２２６５０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、コンピュータは、ウェブサーバからダウンロードしたアプレットを実行するためにウェブブラウザとは別個にアプレット実行用の実行環境を起動する必要がある。
このため、アプレットを利用するサービスの場合、利用開始時にアプレットをダウンロードするステップと実行環境を起動するステップとが必要となり、遅延が発生するという問題がある。また、アプレットのダウンロードは、該当のサービスに対する要求の都度発生するため、これにより遅延が頻発する可能性があるという問題がある。
【０００６】
本発明はこのような点に鑑みてなされたものであり、サービス利用開始時の遅延を抑止するサービス支援プログラムおよびサービス支援方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、サーバが提供するサービスの利用を支援するサービス支援プログラムが提供される。このサービス支援プログラムを実行するコンピュータは、部品要求送信手段、部品記憶手段、部品受信手段、実行制御手段および実行手段を有する。部品要求送信手段は、サーバが提供する複数のサービスの処理に用いる複数のプログラム部品を要求する部品要求をサーバに送信する。部品記憶手段は、複数のプログラム部品と複数のサービスの識別情報との対応付けを定義した環境情報を前記複数のプログラム部品と共に記憶する。部品受信手段は、部品要求送信手段が送信した部品要求に応じてサーバから複数のプログラム部品と環境情報とを受信し、受信した複数のプログラム部品と環境情報とを部品記憶手段に格納する。実行制御手段は、複数のサービスのうちの少なくとも１つのサービスの利用を要求するサービス要求を受け付けると、要求対象のサービスの識別情報を含む実行指示を出力する。実行手段は、実行制御手段が出力した実行指示と部品記憶手段に記憶された環境情報とに基づいて、部品記憶手段に記憶された複数のプログラム部品のうち、実行指示に含まれる識別情報に対応するプログラム部品を実行する。
【０００８】
このようなサービス支援プログラムを実行するコンピュータによれば、部品要求送信手段により、サーバが提供する複数のサービスの処理に用いる複数のプログラム部品を要求する部品要求がサーバに送信される。そして、部品受信手段により、部品要求送信手段が送信した部品要求に応じてサーバから複数のプログラム部品と、複数のプログラム部品と複数のサービスの識別情報との対応付けを定義した環境情報と、が受信され、受信された複数のプログラム部品と環境情報とが部品記憶手段に格納される。また、実行制御手段により、複数のサービスのうちの少なくとも１つのサービスの利用を要求するサービス要求が受け付けられると、要求対象のサービスの識別情報を含む実行指示が出力される。そして、実行手段により、実行制御手段が出力した実行指示と部品記憶手段に記憶された環境情報とに基づいて、部品記憶手段に記憶された複数のプログラム部品のうち、実行指示に含まれる識別情報に対応するプログラム部品が実行される。
【０００９】
また、上記サービス支援プログラムにより実現される処理と同様の処理を行うサービス支援方法が提供される。
【発明の効果】
【００１０】
上記サービス支援プログラムおよびサービス支援方法によれば、サービス利用開始時の遅延を抑止することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本実施の形態を図面を参照して詳細に説明する。
図１は、本実施の形態の概要を示す図である。コンピュータ１は、サーバ２が提供するサービスの利用を支援する。コンピュータ１は、サーバ２と有線または無線のネットワークによって接続されている。サーバ２は、コンピュータ１にアプレットにより所定のサービスを提供する情報処理装置である。
【００１２】
コンピュータ１は、部品要求送信手段１ａ、部品受信手段１ｂ、部品記憶手段１ｃ、サービス要求取得手段１ｄ、実行制御手段１ｅおよび実行手段１ｆを有する。
部品要求送信手段１ａは、サーバ２が提供するサービスＡ，Ｂ，Ｃ，Ｄの処理に用いるアプレットのコンポーネントであるプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４を要求する部品要求をサーバ２に送信する。
【００１３】
部品受信手段１ｂは、部品要求送信手段１ａが送信した部品要求に応じてサーバ２からプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４およびプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４とサービスＡ，Ｂ，Ｃ，Ｄの識別情報との対応付けを定義した環境情報を受信する。部品受信手段１ｂは、受信したプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４と環境情報とを部品記憶手段１ｃに格納する。なお、環境情報は、サービスＡ，Ｂ，Ｃ，Ｄそれぞれに対して複数のファイルとして用意されていてもよいし、サービスＡ，Ｂ，Ｃ，Ｄ全部に対して１つのファイルとして用意されていてもよい。プログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４および環境情報は、サーバ２の所定の記憶部に予め格納される。
【００１４】
部品記憶手段１ｃは、プログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４と環境情報とを記憶する。
サービス要求取得手段１ｄは、サービスＡ，Ｂ，Ｃ，Ｄのうちの少なくとも１つのサービスの利用を要求するサービス要求を取得し、取得したサービス要求を実行制御手段１ｅに出力する。ここで、サービス要求は、例えば、コンピュータ１を利用するユーザが該当のサービスを利用しようとする際に所定の操作を行うことでコンピュータ１に入力される。
【００１５】
実行制御手段１ｅは、サービス要求取得手段１ｄから取得したサービス要求に含まれる識別情報を抽出し、この識別情報を含むサービスの実行指示を実行手段１ｆに出力する。
実行手段１ｆは、実行制御手段１ｅから取得した実行指示に含まれる識別情報を抽出する。そして、実行手段１ｆは、部品記憶手段１ｃに記憶された環境情報に基づいて、部品記憶手段１ｃに記憶されたプログラム部品Ｍ１，Ｍ２，Ｍ３，Ｍ４のうち、抽出した識別情報に対応するプログラム部品を取得して、取得したプログラム部品を実行する。
【００１６】
このようなコンピュータ１によれば、サーバ２からサーバ２が提供する複数のサービスの処理を実行するための複数のプログラム部品が予め取得される。そして、コンピュータ１がサービス要求を受け付けると、該当のサービスに対応するプログラム部品がコンピュータ１の部品記憶手段１ｃから読み出され、読み出されたプログラム部品が実行される。
【００１７】
これにより、アプレットを用いたサービスの利用開始時にプログラム部品をサービス要求の入力を受け付けた都度ダウンロードする必要がなくなる。また、サービス要求取得手段１ｄがサービス要求を受け付ける毎に、プログラム部品の実行環境である実行手段１ｆは、コンピュータ１上に予め実現されるため、実行手段１ｆを起動する必要がなくなる。このため、ダウンロード処理や実行環境の起動処理により生じるサービス利用開始時の遅延を抑止することができる。
【００１８】
ところで、コンピュータ１は、Ｊａｖａ（登録商標）アプレットを用いたサービスの実行を支援する場合に適している。以下では、このＪａｖａアプレットを利用する場合を例に挙げて、更に詳細に説明する。
【００１９】
図２は、ウェブシステムのシステム構成を示す図である。このウェブシステムは、コンピュータ１００およびウェブサーバ２００を有する。コンピュータ１００は、ウェブサーバ２００と有線または無線のネットワーク１０によって接続されている。ネットワーク１０は、例えば、インターネットやイントラネット等のＩＰ（Internet Protocol）通信網である。なお、コンピュータ１００とウェブサーバ２００とを１対１の構成で示しているが、コンピュータ１００と同様の機能を備えた複数のコンピュータがウェブサーバ２００と接続されていても構わない。
【００２０】
コンピュータ１００は、ウェブサーバ２００が提供する業務サービスを利用するクライアントである。コンピュータ１００は、コンピュータ１００で実行されるブラウザを介して、ウェブサーバ２００が提供するＨＴＭＬファイルを取得し、ＨＴＭＬファイルで定義された業務サービスのインタフェースであるウェブページを出力する。
【００２１】
ウェブサーバ２００は、コンピュータ１００に業務サービスを提供する。ウェブサーバ２００は、コンピュータ１００からの要求に基づいて、要求対象のサービスのインタフェースとなるＨＴＭＬファイルや対象のサービスの処理を実行するためのＪａｖａアプレットのプログラム部品をコンピュータ１００に送信する。プログラム部品には、業務サービスの処理を実行するためのクラスファイルやアーカイブファイルが含まれる。
【００２２】
ここで、ウェブサーバ２００がコンピュータ１００に提供する業務サービスのインタフェースの具体例を簡単に説明する。
コンピュータ１００のブラウザは、業務サービス利用開始の際に、業務サービスを利用するための認証入力を行うログインウィンドウ５０を出力する。この出力は、例えば、コンピュータ１００に接続された表示装置の画面上に表示される。ユーザは、表示装置に表示されたインタフェースに従って必要な情報を入力することができる。
【００２３】
ログイン処理が完了すると、コンピュータ１００のブラウザは、業務ポータルウィンドウ６０を出力する。業務ポータルウィンドウ６０には、利用可能なサービスが、例えば、アンカー形式で出力される。アンカーには、予め対象の業務サービスへのリンクが定義づけられている。ユーザは、利用したいサービスのアンカーを選択することで、対象のサービスの利用要求をコンピュータ１００に入力することができる。この入力の結果に応じて、業務ウィンドウ７０，８０が出力される。
【００２４】
業務ウィンドウ７０は、業務ポータルウィンドウ６０において、Ｊａｖａアプレットを含む業務サービスの要求を受け付けた場合に出力される。
業務ウィンドウ８０は、業務ポータルウィンドウ６０において、Ｊａｖａアプレットを含まない業務サービスの要求を受け付けた場合に出力される。業務ウィンドウ８０は、例えば、ウェブサーバ２００上で実行されるサーブレットやＪＳＰ（Java Sever Pages）により生成されたＨＴＭＬファイルやその他のコンポーネントに基づくものである。
【００２５】
ここで、コンピュータ１００は、業務ウィンドウ７０の出力の際にＪａｖａアプレットをその都度ウェブサーバ２００からダウンロードするのではなく、予め一括してダウンロードする。また、コンピュータ１００は、Ｊａｖａアプレットの実行環境であるＪａｖａ仮想マシン（ＪＶＭ：Java Virtual Machine）をサービスの利用要求を受け付ける前に予め起動する。以下では、このようなコンピュータ１００の構成を詳細に説明する。
【００２６】
図３は、コンピュータのハードウェア構成を示すブロック図である。コンピュータ１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ（Random Access Memory）１０２、ＨＤＤ１０３、グラフィック処理装置１０４、入力インタフェース１０５および通信インタフェース１０６が接続されている。
【００２７】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。
【００２８】
ＨＤＤ１０３には、コンピュータ１００上のＯＳやアプリケーションが扱うデータが格納される。
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。
【００２９】
通信インタフェース１０６は、ネットワーク１０に接続されている。通信インタフェース１０６は、ネットワーク１０を介して、他のコンピュータやウェブサーバ２００との間でデータの送受信を行う。
【００３０】
なお、ウェブサーバ２００もコンピュータ１００と同様のハードウェア構成により実現することができる。
図４は、コンピュータの機能構成を示すブロック図である。コンピュータ１００は、アプレットコントローラ部品記憶部１１０、業務アプレット部品記憶部１２０、ブラウザ１３０およびＪａｖａ仮想マシン１４０を有する。なお、Ｊａｖａ仮想マシン１４０は、ウェブサーバ２００から取得するプログラム部品によりアプレットコントローラ１５０が実現される。
【００３１】
アプレットコントローラ部品記憶部１１０は、ブラウザ１３０がウェブサーバ２００よりダウンロードしたアプレットコントローラ部品を記憶する。アプレットコントローラ部品は、アプレットコントローラ１５０を実現するためのプログラム部品とアプレットコントローラの動作環境を定義した動作環境ファイルとを含む。
【００３２】
業務アプレット部品記憶部１２０は、アプレットコントローラ１５０がウェブサーバ２００からダウンロードした業務アプレット部品を記憶する。業務アプレット部品は、ウェブサーバ２００が提供する業務サービスの処理を実行するためのプログラム部品と各業務サービスを利用する際の各種設定を定義した設定ファイルとを含む。また、業務サービスのインタフェースとなるウィンドウを生成する際に利用する画像等のコンテンツを含んでいてもよい。
【００３３】
ブラウザ１３０は、ウェブサーバ２００が提供する業務サービスのインタフェースをモニタ１１に表示する。ブラウザ１３０は、そのインタフェースに従ってユーザが入力した情報をＨＴＴＰ（Hyper Text Transfer Protocol）リクエストとしてウェブサーバ２００に送信する。そして、ブラウザ１３０は、送信したリクエストに応じてウェブサーバ２００から取得するＨＴＭＬファイルやその他のコンポーネントに基づいたウェブページを出力し、ウェブサーバ２００の応答をユーザに通知する。
【００３４】
ブラウザ１３０は、ポータル生成部１３１およびコントローラ起動部１３２を有する。なお、ブラウザ１３０のこれらの機能は、ウェブサーバ２００から取得するＨＴＭＬやＪａｖａスクリプト（Java Script）等の内容に基づいて実現される。
【００３５】
ポータル生成部１３１は、ポータルへのログインを受け付けると、ウェブサーバ２００から取得するＨＴＭＬファイルに基づいて利用可能な業務サービスの一覧を示す業務ポータルウィンドウ６０を生成する。
【００３６】
コントローラ起動部１３２は、ポータル生成部１３１が業務ポータルウィンドウ６０を生成する際にＪａｖａ仮想マシン１４０においてアプレットコントローラ１５０が起動されているか否かを判定する。
【００３７】
コントローラ起動部１３２は、アプレットコントローラ１５０が起動されていない場合、ウェブサーバ２００にアプレットコントローラ部品の送信を要求するリクエストを送信する。コントローラ起動部１３２は、送信したリクエストに応じてウェブサーバ２００から取得したアプレットコントローラ部品をアプレットコントローラ部品記憶部１１０に格納する。更に、コントローラ起動部１３２は、Ｊａｖａ仮想マシン１４０にアプレットコントローラ１５０を起動するよう指示する。
【００３８】
コントローラ起動部１３２は、アプレットコントローラ１５０が既に起動済みである場合には、処理を行わない。
また、コントローラ起動部１３２は、コンピュータ１００上でＪａｖａ仮想マシン１４０が起動していない場合には、Ｊａｖａ仮想マシン１４０の起動を行う。
【００３９】
コントローラ起動部１３２の機能は、例えば、ブラウザ１３０がウェブサーバ２００から取得したポータルの画面を記述したＨＴＭＬファイル内のＪａｖａスクリプトによって定義された処理を実行することで実現される。
【００４０】
Ｊａｖａ仮想マシン１４０は、アプレットコントローラ部品記憶部１１０および業務アプレット部品記憶部１２０に記憶された各プログラム部品を実行するための実行環境である。Ｊａｖａ仮想マシン１４０は、コントローラ起動部１３２によって起動され、更に、コントローラ起動部１３２の指示に基づいてアプレットコントローラ部品記憶部１１０に記憶されたアプレットコントローラ部品を取得し、アプレットコントローラ１５０を実行する。
【００４１】
アプレットコントローラ１５０は、Ｊａｖａアプレットを用いた業務サービスの実行を管理するアプレットである。アプレットコントローラ１５０は、部品要求送信部１５１、部品受信部１５２、配置部１５３、サービス要求取得部１５４、アプレット実行制御部１５５およびアプレット実行部１５６を有する。
【００４２】
部品要求送信部１５１は、業務アプレット部品を要求する部品要求をウェブサーバ２００に送信する。部品要求送信部１５１は、例えば、部品要求をブラウザ１３０を介してウェブサーバ２００に送信することができる。
【００４３】
部品受信部１５２は、部品要求送信部１５１が送信した部品要求に応じてウェブサーバ２００から送信される業務アプレット部品を受信する。部品受信部１５２は、ブラウザ１３０を介して、ウェブサーバ２００からの業務アプレット部品を受信することができる。部品受信部１５２は、受信した各業務アプレット部品を業務アプレット部品記憶部１２０に格納する。
【００４４】
配置部１５３は、業務アプレット部品記憶部１２０に記憶された各業務アプレット部品に含まれるクラスファイルやアーカイブファイルを所定のメモリ領域上に実行可能に配置する。
【００４５】
サービス要求取得部１５４は、ブラウザ１３０を介してＪａｖａアプレットを用いた業務サービスの利用要求（サービス要求）を受け付ける。サービス要求取得部１５４は、取得したサービス要求をアプレット実行制御部１５５に出力する。なお、サービス要求には、要求対象の業務サービスの識別情報として、業務サービス名が含まれる。
【００４６】
アプレット実行制御部１５５は、サービス要求取得部１５４から取得したサービス要求から要求対象の業務サービス名を抽出する。アプレット実行制御部１５５は、抽出した業務サービス名を含むＪａｖａアプレットの実行指示をアプレット実行部１５６に出力する。
【００４７】
アプレット実行部１５６は、アプレット実行制御部１５５から取得するＪａｖａアプレットの実行指示に含まれる業務サービス名に対応する設定ファイルを業務アプレット部品記憶部１２０から読み出す。そして、アプレット実行部１５６は、読み出した設定ファイルに基づいて、配置部１５３が配置した要求対象の業務サービスに用いるクラスファイルを実行して、業務サービスのインタフェースとなるウィンドウを生成する。また、アプレット実行部１５６は、設定ファイルに基づいて、既存のウィンドウに対する制御を行う。
【００４８】
なお、ブラウザ１３０における入力をアプレットコントローラ１５０に出力する等、ＨＴＭＬとＪａｖａ仮想マシン１４０のＪａｖａアプレットとの間の通信は、ＪａｖａスクリプトとＪａｖａアプレットとの間の双方向の通信を可能とする所定のアプリケーションプログラミングインタフェース（ＡＰＩ：Application Programming Interface）を用いて行うことができる。このようなＡＰＩとして、例えば、ＬｉｖｅＣｏｎｎｅｃｔがある。
【００４９】
ウェブサーバ２００は、アプレットコントローラ部品記憶部２１０、業務アプレット部品記憶部２２０およびウェブコンテナ２３０を有する。
アプレットコントローラ部品記憶部２１０は、アプレットコントローラ１５０を実現するためのプログラム部品が予め格納される。
【００５０】
業務アプレット部品記憶部２２０は、ウェブサーバ２００が提供する業務サービスのアプレット部品を記憶する。アプレット部品は、例えば、各業務サービスの導入時にアプレットコントローラ部品記憶部２１０に予め格納される。
【００５１】
ウェブコンテナ２３０は、ブラウザ１３０とＨＴＴＰ通信を行う。ウェブコンテナ２３０は、ブラウザ１３０からのＨＴＴＰリクエストに応じてサーブレットやＪＳＰにより、ＨＴＭＬファイル等を生成し、ブラウザ１３０に応答する。また、ウェブコンテナ２３０は、ブラウザ１３０からアプレットコントローラ部品の要求を取得すると、アプレットコントローラ部品記憶部２１０に記憶されたアプレットコントローラ部品をブラウザ１３０に送信する。同様に、業務アプレット部品の部品要求を取得すると、業務アプレット部品記憶部２２０に記憶された業務アプレット部品をブラウザ１３０に送信する。
【００５２】
図５は、アプレットコントローラ部品記憶部に格納されるデータの例を示す図である。アプレットコントローラ部品記憶部１１０には、コントローラ起動部１３２がウェブサーバ２００から受信したアプレットコントローラ部品１１１が格納される。
【００５３】
アプレットコントローラ部品１１１は、アプレットコントローラ１５０の機能を実現するためのプログラム部品およびアプレットコントローラ１５０の動作環境を定義した動作環境ファイルである。アプレットコントローラ部品１１１には、クラスファイル、アーカイブファイルおよび動作環境ファイルが含まれる。
【００５４】
クラスファイルは、アプレットコントローラ１５０を実行するためのメインのクラスであり、そのファイル名は、例えば“アプレットコントローラ.class”である。
アーカイブファイルは、アプレットコントローラ１５０を実行するための上記クラスファイル以外のクラスファイルをまとめたＪＡＲ（Java ARchive）ファイルであり、そのファイル名は、例えば“アプレットコントローラ.jar”である。
【００５５】
動作環境ファイルは、アプレットコントローラの動作環境を定義したプロパティファイルであり、そのファイル名は、例えば“アプレットコントローラ.properties”である。
アプレットコントローラ部品１１１は、アプレットコントローラ１５０の起動時にＪａｖａ仮想マシン１４０によってアプレットコントローラ部品記憶部１１０から読み込まれて実行される。これにより、アプレットコントローラ１５０の機能、すなわち、部品要求送信部１５１、部品受信部１５２、配置部１５３、サービス要求取得部１５４、アプレット実行制御部１５５およびアプレット実行部１５６がＪａｖａ仮想マシン１４０上で実現される。
【００５６】
図６は、動作環境ファイルの例を示す図である。図６では、上記の“アプレットコントローラ.properties”の例を示している。
“アプレットコントローラ.properties”には、ウェブサーバ２００からのダウンロードの対象となる業務アプレット部品（ＪＡＲファイルやクラスファイル）や各種設定ファイルの所在が、例えば、ウェブサーバ２００のＵＲＬ（Uniform Resource Locator）によって設定される。
【００５７】
また、“アプレットコントローラ.properties”には、アプレット実行部１５６による業務サービスのウィンドウ生成時の各種制御を設定することができる。
制御の内容として、例えば、業務アプレット部品をダウンロードするタイミングを設定することができる。設定するタイミングとしては、アプレットコントローラ１５０の起動時に一括してダウンロードする、対象の業務サービスの利用要求を受け付けた都度ダウンロードする等が考えられる。以下では、業務アプレット部品のダウンロードは、アプレットコントローラ１５０の起動時に一括して行われる設定となっているものとする。
【００５８】
また、例えば、新規でウィンドウを表示する場合に既存ウィンドウに対するデフォルトの制御を設定することができる。すなわち、新規にウィンドウを表示する際に、他の業務で利用していた既存のウィンドウを非アクティブ化（フォーカスが外れ、操作対象から外れた状態）する、最小化（操作画面上にアイコンで表示された状態）する、または、既存のウィンドウを閉じる等の制御である。
【００５９】
また、例えば、新規に表示したウィンドウにおいてウィンドウサイズの変更を受け付け可能とするか否かを設定することができる。
このように、動作環境を予め設定しておくことにより、アプレットコントローラ１５０は、アプレット実行部１５６が新規に業務サービスのインタフェースとなるウィンドウを生成し、各ウィンドウの制御を独自に設定可能とする（図１６，１７で詳述する）。
【００６０】
図７は、業務アプレット部品記憶部に格納されるデータの例を示す図である。業務アプレット部品記憶部１２０には、部品受信部１５２がウェブサーバ２００から受信した業務アプレット部品群１２１および共通アプレット部品群１２２が格納される。
【００６１】
業務アプレット部品群１２１は、ウェブサーバ２００が提供する各業務サービスの処理を実行するための業務アプレット部品の集合である。各業務アプレット部品には、各業務サービスの処理を実行するためのプログラム部品および各業務サービスのインタフェースとなるウィンドウを生成するための設定ファイルが含まれる。
【００６２】
共通アプレット部品群１２２は、各業務サービスで共通的に利用可能な処理を実行するための共通アプレット部品の集合である。各業務サービスで共通的に利用可能な処理とは、例えば、住所検索等の汎用性の高い処理である。各共通アプレット部品には、業務アプレット部品と同様に、各共通処理を実行するためのプログラム部品および各共通処理のインタフェースとなるウィンドウを生成するための設定ファイルが含まれる。
【００６３】
図８は、業務アプレット部品群の構成例を示す図である。業務アプレット部品群１２１には、業務アプレット部品１２１ａ，１２１ｂ，１２１ｃが含まれる。なお、以下では、業務アプレット部品１２１ａに関して説明するが業務アプレット部品１２１ｂ，１２１ｃについても同様である。なお、業務アプレット部品１２１ａは、例えば、入金業務サービスの処理を実行するために用いられる。
【００６４】
業務アプレット部品１２１ａには、クラスファイル、アーカイブファイルおよびウィンドウ設定ファイルが含まれる。
クラスファイルは、入金業務サービスのインタフェースとなるウィンドウを生成するためのメインのクラスであり、そのファイル名は、例えば“入金業務.class”である。
【００６５】
アーカイブファイル名は、入金業務サービスを実行するための上記クラスファイル以外のクラスファイルをまとめたＪＡＲファイルであり、そのファイル名は、例えば“入金業務.jar”である。
【００６６】
ウィンドウ設定ファイルは、入金業務サービスのウィンドウの設定を定義したプロパティファイルであり、そのファイル名は、例えば“入金業務.properties”である。
図９は、ウィンドウ設定ファイルの例を示す図である。図９では、入金業務用のウィンドウ設定ファイル（入金業務.properties）の例を示している。
【００６７】
“入金業務.properties”には、例えば、ウィンドウの名称やウィンドウ生成時に実行するクラスファイル名“入金業務.class”を指定する情報が設定される。また、ウィンドウ生成時のウィンドウのサイズや、初期表示時の表示状態（ウィンドウ表示、アイコン化および全画面化等）を指定する情報が設定される。更に、動作環境ファイル“アプレットコントローラ.properties”でデフォルトの設定として定義された既存ウィンドウに対する制御や、新規に生成したウィンドウに対するサイズ変更の操作受け付けを可とするか否か等を業務サービス個別で設定することも可能である。
【００６８】
なお、以降に示す例では、“入金業務.properties”において、新規ウィンドウの初期表示状態に“ウィンドウ表示”、新規ウィンドウ表示時の既存ウィンドウに対する制御に“非アクティブ化”、新規ウィンドウに対するウィンドウサイズ変更の操作受付モードに“サイズ変更可”が設定されているものとする。これらの設定は、動作環境ファイル“アプレットコントローラ.properties”でデフォルトの設定よりも優先される。
【００６９】
図１０は、共通アプレット部品群の構成例を示す図である。共通アプレット部品群１２２には、共通アプレット部品１２２ａ，１２２ｂ，１２２ｃが含まれる。なお、以下では、共通アプレット部品１２２ａに関して説明するが共通アプレット部品１２２ｂ，１２２ｃについても同様である。なお、共通アプレット部品１２２ａは、例えば、住所検索サービスの処理を実行するために用いられる。
【００７０】
共通アプレット部品１２２ａには、クラスファイル、アーカイブファイルおよびウィンドウ設定ファイルが含まれる。
クラスファイルは、住所検索サービスのインタフェースとなるウィンドウを生成するためのメインのクラスであり、そのファイル名は、例えば“住所検索.class”である。
【００７１】
アーカイブファイル名は、住所検索サービスを実行するための上記クラスファイル以外のクラスファイルをまとめたＪＡＲファイルであり、そのファイル名は、例えば“住所検索.jar”である。
【００７２】
ウィンドウ設定ファイルは、住所検索サービスのウィンドウの設定を定義したプロパティファイルであり、そのファイル名は、例えば“住所検索.properties”である。
なお、ウィンドウ設定ファイルの設定内容に関しては、図９で示した“入金業務.properties”の内容と同様のためその説明を省略する。
【００７３】
次に、以上のような構成を備えるコンピュータ１００において実行される処理の詳細を説明する。
図１１は、アプレットコントローラの起動処理の手順を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
【００７４】
［ステップＳ１１］ポータル生成部１３１は、業務サービスのポータルへのログインを受け付ける。
［ステップＳ１２］ポータル生成部１３１は、ウェブサーバ２００より業務サービスのポータルページのＨＴＭＬファイルをダウンロードする。なお、ポータル生成部１３１がダウンロードしたＨＴＭＬファイルには、コントローラ起動部１３２の機能を実現するためのＪａｖａスクリプトが含まれる。ブラウザ１３０は、このＪａｖａスクリプトを実行することで、コントローラ起動部１３２を実現する。
【００７５】
［ステップＳ１３］コントローラ起動部１３２は、アプレットコントローラ１５０が未起動であるか否かを判定する。未起動である場合、処理がステップＳ１４に移される。起動済みである場合、処理が完了する。
【００７６】
［ステップＳ１４］コントローラ起動部１３２は、ウェブサーバ２００からアプレットコントローラ１５０の起動を記述したＨＴＭＬファイルをダウンロードする。このＨＴＭＬファイルには、アプレットコントローラ１５０の起動に必要となるアプレットコントローラ部品の所在等が予め設定されている。
【００７７】
［ステップＳ１５］コントローラ起動部１３２は、上記ステップＳ１４でダウンロードしたＨＴＭＬファイルに基づいて、ウェブサーバ２００からアプレットコントローラ部品をダウンロードする。コントローラ起動部１３２は、ダウンロードしたアプレットコントローラ部品をアプレットコントローラ部品記憶部１１０に格納する。
【００７８】
［ステップＳ１６］コントローラ起動部１３２は、Ｊａｖａ仮想マシン１４０が未起動であるか否かを判定する。未起動である場合、処理がステップＳ１７に移される。起動済みである場合、処理がステップＳ１８に移される。
【００７９】
［ステップＳ１７］コントローラ起動部１３２は、Ｊａｖａ仮想マシン１４０を起動をする。
［ステップＳ１８］コントローラ起動部１３２は、Ｊａｖａ仮想マシン１４０にアプレットコントローラ１５０の起動を指示する。Ｊａｖａ仮想マシン１４０は、コントローラ起動部１３２からの指示を取得すると、アプレットコントローラ部品記憶部１１０に記憶されたアプレットコントローラ部品を用いてアプレットコントローラ１５０を起動する。
【００８０】
［ステップＳ１９］部品要求送信部１５１は、“アプレットコントローラ.properties”に設定された業務アプレット部品群および共通アプレット部品群のダウンロード要求をウェブサーバ２００に送信する。そして、部品受信部１５２は、部品要求送信部１５１が送信した要求に応じてウェブサーバ２００から業務アプレット部品群および共通アプレット部品群を受信する。部品受信部１５２は、受信した業務アプレット部品群および共通アプレット部品群を業務アプレット部品記憶部１２０に格納する。
【００８１】
［ステップＳ２０］配置部１５３は、業務アプレット部品記憶部１２０に記憶された業務アプレット部品群および共通アプレット部品群に含まれるクラスファイルやＪＡＲファイルを所定のメモリ領域に配置し、処理が完了する。
【００８２】
このように、コンピュータ１００は、Ｊａｖａ仮想マシン１４０およびアプレットコントローラ１５０を予め起動しておき、業務サービスの処理で用いる業務アプレット部品や共通アプレット部品を予め一括して取得する。
【００８３】
これにより、Ｊａｖａアプレットを用いる業務サービスの処理を実行する際に、業務アプレット部品等をその都度ダウンロードする必要がなくなる。また、Ｊａｖａ仮想マシン１４０は予め起動されるので、Ｊａｖａ仮想マシン１４０を新たに起動する必要がなくなる。
【００８４】
なお、アプレットコントローラ１５０の起動処理は、ブラウザ１３０の処理と非同期で行うことができる。すなわち、ブラウザ１３０上では、例えば、サーブレットやＪＳＰ等によるウェブページの表示を行いつつ、業務アプレット部品のダウンロードを行うことができる。これにより、ユーザは、待機時間がなく効率良く業務を行うことができる。
【００８５】
次に、上記の処理の後に、業務サービスを実行するための処理に関して詳しく説明する。
図１２は、業務サービス実行処理の手順を示すフローチャートである。以下、図１２に示す処理をステップ番号に沿って説明する。なお、以下では、サービスの利用要求の例として、入金業務サービスの利用要求を受け付ける場合とする。
【００８６】
［ステップＳ２１］ブラウザ１３０は、Ｊａｖａアプレットを用いた入金業務サービスの利用要求であるサービス要求を取得する。なお、このサービス要求には、要求対象となる業務サービスの識別情報として、業務サービス名が含まれる。
【００８７】
［ステップＳ２２］ブラウザ１３０は、アプレットコントローラ１５０が起動済みであるか否かを判定する。起動済みである場合、処理がステップＳ２４に移される。未起動である場合、処理がステップＳ２３に移される。
【００８８】
［ステップＳ２３］ブラウザ１３０は、アプレットコントローラ１５０が未起動である旨を通知するエラーを出力し、処理が完了する。
［ステップＳ２４］ブラウザ１３０は、アプレットコントローラ１５０にサービス要求を出力する。
【００８９】
［ステップＳ２５］アプレットコントローラ１５０は、入金業務サービスのウィンドウの起動処理を実行する。そして、アプレットコントローラ１５０は、入金業務サービスのウィンドウを生成し、モニタ１１に出力する。
【００９０】
［ステップＳ２６］アプレットコントローラ１５０は、上記ステップＳ２５で出力したウィンドウに基づいて必要な情報の入力等を受け付け、入金業務の処理を実行する。
［ステップＳ２７］アプレットコントローラ１５０は、ブラウザ１３０を介して入金業務の実行結果をウェブサーバ２００に送信する。
【００９１】
このようにして、ブラウザ１３０は、Ｊａｖａアプレットを利用する業務サービスに関しては、アプレットコントローラ１５０にそのサービス要求を出力する。そして、上記ステップＳ２５で示したように、アプレットコントローラ１５０では、ブラウザ１３０から取得するサービス要求の対象となる業務サービスを実行する。
【００９２】
以下では、上記ステップＳ２５の処理を更に詳細に説明する。
図１３は、業務サービス起動処理の手順を示すフローチャートである。以下、図１３に示す処理をステップ番号に沿って説明する。なお、図１３に示す処理は、図１２におけるステップＳ２５における処理を更に詳細に示したものである。
【００９３】
［ステップＳ３１］サービス要求取得部１５４は、ブラウザ１３０から取得する入金業務サービスに対するサービス要求をアプレット実行制御部１５５に出力する。
［ステップＳ３２］アプレット実行制御部１５５は、サービス要求に含まれる要求対象の業務サービスのサービス名“入金業務”を取得する。そして、アプレット実行制御部１５５は、この“入金業務”の実行指示をアプレット実行部１５６に出力する。
【００９４】
［ステップＳ３３］アプレット実行部１５６は、アプレット実行制御部１５５から取得する実行指示から対象のサービス名“入金業務”を抽出する。そして、アプレット実行部１５６は、このサービス名に基づいて、業務アプレット部品記憶部１２０に記憶されたウィンドウ設定ファイル“入金業務.properties”を取得する。
【００９５】
［ステップＳ３４］アプレット実行部１５６は、動作環境ファイル“アプレットコントローラ.properties”に設定された各種デフォルトの設定やウィンドウ設定ファイル“入金業務.properties”に設定された各業務サービスの設定に基づいて、生成するウィンドウの設定を取得する。また、アプレット実行部１５６は、“入金業務.properties”に設定されたクラスファイル“入金業務.class”を取得する。
【００９６】
［ステップＳ３５］アプレット実行部１５６は、取得した“入金業務.class”により入金業務サービス用の新しいウィンドウを生成する。なお、この段階では、未だ生成されたウィンドウは、モニタ１１上には表示されない。
【００９７】
［ステップＳ３６］アプレット実行部１５６は、“入金業務.properties”の設定に基づいて生成したウィンドウの名称、サイズおよび初期表示状態等を設定する。
［ステップＳ３７］アプレット実行部１５６は、既存のウィンドウが存在するか否かを判定する。存在する場合、処理がステップＳ３８に移される。存在しない場合、処理がステップＳ３９に移される。
【００９８】
［ステップＳ３８］アプレット実行部１５６は、“入金業務.properties”の設定に基づいて既存ウィンドウに対する制御を行う。ここでは、既存ウィンドウを非アクティブ化する。
【００９９】
［ステップＳ３９］アプレット実行部１５６は、新規に生成した入金業務サービス用のウィンドウをモニタ１１上に可視化して、処理が完了する。
このようにして、業務サービスの業務アプレット部品が実行される。
【０１００】
なお、アプレット実行制御部１５５およびアプレット実行部１５６は、業務サービスの識別情報としてサービス名を用いることとしたが、他の識別情報（例えば、識別番号）により対象のサービスの識別およびウィンドウ設定ファイルの特定を行うようにしてもよい。
【０１０１】
また、上記ステップＳ３８では、既存ウィンドウに対する制御として非アクティブ化を行う例を示したが、他の制御を行うこともできる。この場合、“入金業務.properties”において、その制御内容（例えば、最小化やクローズ等）を予め指定する。
【０１０２】
更に、共通アプレット部品により実現するサービスを各業務サービスのウィンドウから実行可能である。共通アプレット部品の実行の際にも、図１３に示す処理と同様の処理により共通処理のウィンドウが新規に生成される。
【０１０３】
次に、図１２，１３で示した処理におけるコンピュータ１００とウェブサーバ２００との間の具体的な通信の流れを示す。
図１４は、業務サービス実行処理の流れの具体例を示すシーケンス図である。以下、図１４に示す処理をステップ番号に沿って説明する。
【０１０４】
［ステップＳ４１］コンピュータ１００は、入金業務サービスの利用要求の入力を受け付ける。
［ステップＳ４２］コンピュータ１００は、入金業務サービスの業務アプレット部品を実行し、入金業務のウィンドウをモニタ１１に表示する。なお、コンピュータ１００は、入金業務のウィンドウに対する操作に応じて共通アプレット部品を実行し、共通サービスのウィンドウをモニタ１１に表示する。
【０１０５】
［ステップＳ４３］コンピュータ１００は、入金業務のウィンドウに従って入力された情報に基づいて、業務処理を実行する。
［ステップＳ４４］コンピュータ１００は、入金業務処理の実行結果をウェブサーバ２００に送信する。
【０１０６】
［ステップＳ４５］コンピュータ１００は、出金業務サービスの利用要求の入力を受け付ける。
［ステップＳ４６］コンピュータ１００は、出金業務サービスの業務アプレット部品を実行し、出金業務のウィンドウをモニタ１１に表示する。なお、コンピュータ１００は、出金業務のウィンドウに対する操作に応じて共通アプレット部品を実行し、共通サービスのウィンドウをモニタ１１に表示する。
【０１０７】
［ステップＳ４７］コンピュータ１００は、出金業務のウィンドウに従って入力された情報に基づいて、業務処理を実行する。
［ステップＳ４８］コンピュータ１００は、出金業務処理の実行結果をウェブサーバ２００に送信する。
【０１０８】
このように、コンピュータ１００は、業務サービスの利用要求を受け付けると業務アプレット部品記憶部１２０に記憶された業務アプレット部品を実行して各業務サービスのウィンドウを起動することができる。
【０１０９】
次に、比較のため、アプレットコントローラ１５０を用いない場合の業務サービスの実行処理の流れに関して説明する。
図１５は、アプレットコントローラを利用しない場合の業務サービス実行処理の流れの具体例を示すシーケンス図である。以下、図１５に示す処理をステップ番号に沿って説明する。
【０１１０】
［ステップＳ１０１］コンピュータ１００ａは、入金業務サービスの利用要求の入力を受け付ける。
［ステップＳ１０２］コンピュータ１００ａは、入金業務サービスの業務アプレット部品を要求する部品要求をウェブサーバ２００ａに送信する。
【０１１１】
［ステップＳ１０３］ウェブサーバ２００ａは、コンピュータ１００ａから受信する部品要求に応じて、入金業務サービスの処理に用いる業務アプレット部品および共通アプレット部品をコンピュータ１００ａに送信する。
【０１１２】
［ステップＳ１０４］コンピュータ１００ａは、業務アプレット部品の実行環境であるＪａｖａ仮想マシンを起動する。
［ステップＳ１０５］コンピュータ１００ａは、ウェブサーバ２００ａから受信した入金業務サービスの業務アプレット部品を実行し、入金業務のウィンドウをコンピュータ１００ａに接続されたモニタに表示する。なお、コンピュータ１００ａは、入金業務のウィンドウに対する操作に応じて共通アプレット部品を実行し、共通サービスのウィンドウをモニタに表示する。
【０１１３】
［ステップＳ１０６］コンピュータ１００ａは、入金業務のウィンドウに従って入力された情報に基づいて、業務処理を実行する。
［ステップＳ１０７］コンピュータ１００ａは、入金業務処理の実行結果をウェブサーバ２００ａに送信する。
【０１１４】
［ステップＳ１０８］コンピュータ１００ａは、出金業務サービスの利用要求の入力を受け付ける。
［ステップＳ１０９］コンピュータ１００ａは、出金業務サービスの業務アプレット部品を要求する部品要求をウェブサーバ２００ａに送信する。
【０１１５】
［ステップＳ１１０］ウェブサーバ２００ａは、コンピュータ１００ａから受信する部品要求に応じて、出金業務サービスの処理に用いる業務アプレット部品および共通アプレット部品をコンピュータ１００ａに送信する。
【０１１６】
［ステップＳ１１１］コンピュータ１００ａは、ウェブサーバ２００ａから受信した出金業務サービスの業務アプレット部品を実行し、出金業務のウィンドウをモニタに表示する。なお、コンピュータ１００ａは、出金業務のウィンドウに対する操作に応じて共通アプレット部品を実行し、共通サービスのウィンドウをモニタに表示する。
【０１１７】
［ステップＳ１１２］コンピュータ１００ａは、出金業務のウィンドウに従って入力された情報に基づいて、業務処理を実行する。
［ステップＳ１１３］コンピュータ１００ａは、出金業務処理の実行結果をウェブサーバ２００ａに送信する。
【０１１８】
このように、アプレットコントローラ１５０を予め起動して業務アプレット部品や共通アプレット部品をダウンロードしていない場合には、業務サービスの利用開始時に上記ステップＳ１０２，Ｓ１０３，Ｓ１０９，Ｓ１１０に示す業務アプレット部品のダウンロード処理が必要となる。また、Ｊａｖａ仮想マシンが未起動である場合には、上記ステップＳ１０４に示す起動処理が必要となる。
【０１１９】
これに対し、コンピュータ１００は、Ｊａｖａ仮想マシン１４０およびアプレットコントローラ１５０を予め起動する。そして、アプレットコントローラ１５０により業務アプレット部品や共通アプレット部品を予め一括してダウンロードする。このため、図１４に示したように、業務サービスの利用開始時にＪａｖａ仮想マシンの起動処理および業務アプレット部品等のダウンロード処理が発生しなくなる。これにより、サービス利用開始時の遅延を抑止することができる。
【０１２０】
図１６は、アプレットコントローラが生成するウィンドウの第１の具体例を示す図である。ブラウザ１３０は、業務ポータルウィンドウ６０およびアプレットコントローラウィンドウ５００を生成する。これらのウィンドウは、ブラウザ１３０によりモニタ１１に表示される。
【０１２１】
業務ポータルウィンドウ６０は、入金業務サービスや出金業務サービス等の業務サービスの利用要求を受け付けるポータルページを表示する。コンピュータ１００は、ユーザにより所定の操作入力を受け付けるとブラウザ１３０を起動して、業務ポータルウィンドウ６０のためのＨＴＭＬファイルをウェブサーバ２００から取得する。ブラウザ１３０は、このＨＴＭＬファイルに基づいて、業務ポータルウィンドウ６０を生成する。
【０１２２】
アプレットコントローラウィンドウ５００は、アプレットコントローラ１５０を実行するために起動されるウィンドウである。ブラウザ１３０は、業務ポータルウィンドウ６０を生成した後、アプレットコントローラウィンドウ５００を起動するためのＨＴＭＬファイルをウェブサーバ２００から取得する。ブラウザ１３０は、このＨＴＭＬファイルの基づき、必要に応じてＪａｖａ仮想マシン１４０を起動して、アプレットコントローラウィンドウ５００を生成する。
【０１２３】
なお、アプレットコントローラウィンドウ５００は、ユーザからの操作入力を直接受け付けないため、例えば、ユーザからは不可視状態にする。アプレットコントローラウィンドウ５００の起動と共に、アプレットコントローラ１５０が起動され、業務サービスに必要なアプレット部品がウェブサーバ２００から一括でダウンロードされることとなる。
【０１２４】
そして、ブラウザ１３０は、業務ポータルウィンドウ６０に対するユーザによる所定の操作入力により要求された業務サービスをアプレットコントローラ１５０に通知する。アプレットコントローラ１５０は、通知された業務サービスのウィンドウを業務アプレット部品を用いて生成する。アプレットコントローラ１５０が生成するウィンドウは、例えば、入金業務ウィンドウ５１０、出金業務ウィンドウ５２０および共通業務ウィンドウ５３０である。
【０１２５】
入金業務ウィンドウ５１０は、業務ポータルウィンドウ６０において入金業務サービスの利用がユーザにより選択された際に生成される。
出金業務ウィンドウ５２０は、業務ポータルウィンドウ６０において出金業務サービスの利用がユーザにより選択された際に生成される。
【０１２６】
共通業務ウィンドウ５３０は、入金業務や出金業務で共通的に利用可能なサービスのためのウィンドウである。ここでは、共通業務ウィンドウ５３０は、出金業務ウィンドウ５２０から呼び出された場合を示している。
【０１２７】
アプレットコントローラ１５０は、共通業務ウィンドウ５３０が生成される際に、呼び出し元となった既存のウィンドウである出金業務ウィンドウ５２０に対する制御（非アクティブ化や最小化等）を行う。
【０１２８】
このように、アプレットコントローラ１５０は、ブラウザ１３０とは別個のウィンドウを生成する。
一方、従来Ｊａｖａアプレットはブラウザ上で実行されており、Ｊａｖａアプレット側の利便性の都合で自由にウィンドウに対する操作を行うことができなかった。すなわち、ＨＴＭＬファイルのコードから呼び出されて実行されるＪａｖａアプレットは、ＨＴＭＬファイル内に記述されたブラウザ用のウィンドウ設定の範囲内で利用しなければならなかった。
【０１２９】
しかし、アプレットコントローラ１５０は、ブラウザ１３０のウィンドウとは別個のウィンドウを生成する。このため、アプレットコントローラ１５０は、自身が生成したウィンドウに対する制御が可能となる。これにより、各業務サービスの利便性の都合で、新規ウィンドウの生成に際しての既存ウィンドウの制御を行うことを可能とする。
【０１３０】
また、Ｊａｖａアプレットを利用する業務サービスのウィンドウをブラウザのウィンドウとは切り離して生成するため、ユーザが業務サービスのウィンドウに対するサイズ変更等の操作を行うこともできる。
【０１３１】
以下では、アプレットコントローラ１５０により、このような操作を受け付け可能に生成されたウィンドウの具体例を説明する。
図１７は、アプレットコントローラが生成するウィンドウの第２の具体例を示す図である。出金業務ウィンドウ５２０は、業務処理の最初の内容として、例えば、口座情報を入力するための構成となっている。出金業務ウィンドウ５２０は、ボタン５２１，５２２，５２３，５２４を有する。
【０１３２】
ボタン５２１は、出金業務ウィンドウ５２０をアイコン化するための操作入力を受け付けるボタンである。
ボタン５２２は、出金業務ウィンドウ５２０を全画面表示するための操作入力を受け付けるボタンである。
【０１３３】
ボタン５２３は、出金業務ウィンドウ５２０をクローズするための操作入力を受け付けるボタンである。
ボタン５２１，５２２，５２３を利用可能とするか否かは、動作環境ファイル（“アプレットコントローラ.properties”）や出金業務サービス用のウィンドウ設定ファイルに基づいて制御することができる。
【０１３４】
ボタン５２４は、共通業務ウィンドウ５３０を起動するための操作入力を受け付けるボタンである。出金業務ウィンドウ５２０は、ポインティングデバイスを用いてボタン５２４が押下されたことを検出すると、アプレットコントローラ１５０にその旨を通知する。アプレットコントローラ１５０は、この通知に基づいて、共通業務ウィンドウ５３０（例えば、住所検索のウィンドウ）を起動する。アプレットコントローラ１５０は、共通業務ウィンドウ５３０に対しても、出金業務ウィンドウ５２０のボタン５２１，５２２，５２３と同様にウィンドウを操作するための各種ボタンを利用可能とすることができる。
【０１３５】
このように、アプレットコントローラ１５０は、業務サービス用のウィンドウを生成する際に、ウィンドウ操作用のボタン５２１，５２２，５２３を生成したウィンドウに付加する。そして、ボタン５２１，５２２，５２３に対する操作入力を受け付けて各種ウィンドウ操作を行えるようにすることができる。
【０１３６】
上述したようにコンピュータ１００を用いることで、ウェブサーバ２００からウェブサーバ２００が提供する複数のサービスの処理を実行するための業務アプレット部品や共通アプレット部品がＪａｖａ仮想マシン１４０上のアプレットコントローラ１５０により予め一括して取得される。そして、コンピュータ１００がサービスの利用要求であるサービス要求を受け付けると、アプレットコントローラ１５０により該当のサービスに対応する業務アプレット部品が読み出されて実行される。
【０１３７】
これにより、Ｊａｖａアプレットを用いた業務サービスの利用開始時に業務アプレット部品や共通アプレット部品をサービス要求の入力を受け付けた都度ダウンロードする必要がなくなる。また、Ｊａｖａアプレットの実行環境であるＪａｖａ仮想マシン１４０は、コンピュータ１００で予め実行されるので、サービス要求受け付け時にＪａｖａ仮想マシン１４０を起動する必要がなくなる。このため、Ｊａｖａアプレットのダウンロード処理やＪａｖａ仮想マシン１４０の起動処理により生じるサービス利用開始時の遅延を抑止することができる。
【０１３８】
なお、上記の例では、ウェブサーバ２００が提供する全ての業務サービスについてのＪａｖａアプレットを全てダウンロードするものとしたが、例えば、利用頻度の高いＪａｖａアプレットのみを予めダウンロードするようにしてもよい。
【０１３９】
また、アプレットコントローラ１５０の起動のタイミングを業務ポータルウィンドウ６０の起動後としたが、例えば、コンピュータ１００の起動が完了した直後に起動するようにしてもよい。この場合、コンピュータ１００の起動後、バックグラウンドでＪａｖａアプレットのダウンロードが実行されるので、更に、迅速に業務サービスを利用開始することができる。
【０１４０】
以上、本発明のサービス支援プログラムおよびサービス支援方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置き換えることができる。また、他の任意の構成物や工程が付加されてもよい。また、本発明は前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【０１４１】
なお、上記のサービス支援プログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体には、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ＨＤＤ、フレキシブルディスク（ＦＤ）、磁気テープ（ＭＴ）などがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc - Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto - Optical disk）などがある。
【０１４２】
上記プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、上述したようにプログラムをサーバに格納しておき、ネットワークを介して、サーバから他のコンピュータにそのプログラムを転送することもできる。
【０１４３】
上記プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラム若しくはサーバから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【図面の簡単な説明】
【０１４４】
【図１】本実施の形態の概要を示す図である。
【図２】ウェブシステムのシステム構成を示す図である。
【図３】コンピュータのハードウェア構成を示すブロック図である。
【図４】コンピュータの機能構成を示すブロック図である。
【図５】アプレットコントローラ部品記憶部に格納されるデータの例を示す図である。
【図６】動作環境ファイルの例を示す図である。
【図７】業務アプレット部品記憶部に格納されるデータの例を示す図である。
【図８】業務アプレット部品群の構成例を示す図である。
【図９】ウィンドウ設定ファイルの例を示す図である。
【図１０】共通アプレット部品群の構成例を示す図である。
【図１１】アプレットコントローラの起動処理の手順を示すフローチャートである。
【図１２】業務サービス実行処理の手順を示すフローチャートである。
【図１３】業務サービス起動処理の手順を示すフローチャートである。
【図１４】業務サービス実行処理の流れの具体例を示すシーケンス図である。
【図１５】アプレットコントローラを利用しない場合の業務サービス実行処理の流れの具体例を示すシーケンス図である。
【図１６】アプレットコントローラが生成するウィンドウの第１の具体例を示す図である。
【図１７】アプレットコントローラが生成するウィンドウの第２の具体例を示す図である。
【符号の説明】
【０１４５】
１  コンピュータ
１ａ  部品要求送信手段
１ｂ  部品受信手段
１ｃ  部品記憶手段
１ｄ  サービス要求取得手段
１ｅ  実行制御手段
１ｆ  実行手段
Ｍ１  サービスＡ用部品
Ｍ２  サービスＢ用部品
Ｍ３  サービスＣ用部品
Ｍ４  サービスＤ用部品
【図１】
2010097543.tif 000003
【図２】
2010097543.tif 000004
【図３】
2010097543.tif 000005
【図４】
2010097543.tif 000006
【図５】
2010097543.tif 000007
【図６】
2010097543.tif 000008
【図７】
2010097543.tif 000009
【図８】
2010097543.tif 000010
【図９】
2010097543.tif 000011
【図１０】
2010097543.tif 000012
【図１１】
2010097543.tif 000013
【図１２】
2010097543.tif 000014
【図１３】
2010097543.tif 000015
【図１４】
2010097543.tif 000016
【図１５】
2010097543.tif 000017
【図１６】
2010097543.tif 000018
【図１７】
2010097543.tif 000019