(57)【要約】【課題】クライアントの処理負担を軽減させることができるようにする。【解決手段】アクセスしてきたクライアントアプリケーション１１に対してWebアプリケーション１２を起動させているか否かを表す識別子がサーバコンピュータ２により管理される。サーバコンピュータ２においては、クライアントアプリケーション１１からのアクセスを受けたとき、そのときアクセスしてきたクライアントアプリケーション１１との間で各種の処理を行う１つのWebアプリケーション１２を既に起動させているか否かが識別子の設定に基づいて判定され、Webアプリケーション１２を起動させていないと判定された場合のみ、Webアプリケーション１２が起動される。本発明は、パーソナルコンピュータ、携帯電話機、PDAなどの各種の情報処理装置に適用することができる。【選択図】図１
2005196628.tif 000002
【特許請求の範囲】
【請求項１】
情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する情報処理装置において、
情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定手段と、
前記判定手段により起動中のアプリケーションの数が前記所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記判定手段は、自分自身が管理する、起動中のアプリケーションの数を表す識別子の設定に基づいて、起動中のアプリケーションの数が、所定の数未満であるか否かを判定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判定手段は、起動中のアプリケーションの数が、所定の数未満ではないと判定した場合、アプリケーションを起動することができないことを、アクセスしてきた情報処理端末に通知する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する情報処理装置の情報処理方法において、
情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定ステップと、
前記判定ステップの処理により起動中のアプリケーションの数が前記所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップと
を含むことを特徴とする情報処理方法。
【請求項５】
情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する処理をコンピュータに実行させるプログラムが記録されている記録媒体において、
情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定ステップと、
前記判定ステップの処理により起動中のアプリケーションの数が前記所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップと
を含むことを特徴とする記録媒体。
【請求項６】
情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する処理をコンピュータに実行させるプログラムにおいて、
情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定ステップと、
前記判定ステップの処理により起動中のアプリケーションの数が前記所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、記録媒体、並びにプログラムに関し、特に、クライアントの処理負担を軽減させることができるようにする情報処理装置および方法、記録媒体、並びにプログラムに関する。
【背景技術】
【０００２】
近年、サーバとクライアントがネットワークを介して接続されるシステムにおいて、サーバから送信されてくるコマンドの内容を解釈し、クライアントが、クライアント自身に内蔵されるデバイス（機器）や、ケーブルなどを介して接続される外部のデバイスを制御することが行われている。
【０００３】
例えば、ユーザが操作するパーソナルコンピュータがクライアントとなり、そのパーソナルコンピュータが、外部のリーダライタにユーザによりかざされている（近接されている）非接触ICカードにより保持されている電子マネー情報を、サーバから送信されてくるコマンドに従って更新させるシステムがある。
【０００４】
そのようなシステムにおいて、電子マネー情報を更新する処理は、例えば、クライアントに用意されたアプリケーションと、そのアプリケーションから、所定のURL(Uniform Resource Locator)に対するアクセスが行われたときに起動するサーバのWebアプリケーションとの間で所定のコマンドが送受信されることで実現される。
【０００５】
ところで、特許文献１には、サーバ−クライアントシステムにおいて、サーバから送信されてきたコマンドに従ってICチップに書き込んだ情報を複数のクライアント間で移動させる技術が開示されている。
【特許文献１】特開２００３−１４１４２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、ユーザの操作によっては、同じURLに対するアクセスが１台のクライアントのアプリケーションから複数回行われることがあり、この場合（１つのセッションが終わる前に、他のセッションが重複して確立される場合）、上述したような電子マネー情報を更新する処理を実現するサーバ上のWebアプリケーションは、１回のアクセス毎に１つのアプリケーションが起動するようになされていることから、アクセスの回数に応じた数のWebアプリケーションがサーバ上で起動することになる。すなわち、１つのクライアントのアプリケーションに対して、サーバ上では複数のWebアプリケーションが起動することになる。
【０００７】
１台のクライアントの処理能力は一般的にサーバの処理能力と較べて低いため、１台のクライアントのアプリケーションが、サーバ上の複数のWebアプリケーションを相手として並列的に処理を行うことは、クライアントにとって処理負担が重すぎ、結果としてクライアントのアプリケーションが正常に動作しなくなってしまう。
【０００８】
また、サーバのWebアプリケーションは、本来、制御対象となるクライアント側のデバイスの数（例えば、クライアントに接続されたリーダライタにかざされた１つの非接触ICカード）に応じた数だけ起動するだけで十分であるところ、このように、複数のWebアプリケーションが起動することは、サーバ側の処理負担が増加することにもなる。
【０００９】
本発明はこのような状況に鑑みてなされたものであり、特に、サーバと較べて処理能力の低いクライアントの処理負担を軽減させることができるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の情報処理装置は、情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する情報処理装置であって、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定手段と、判定手段により起動中のアプリケーションの数が所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御手段とを備えることを特徴とする。
【００１１】
判定手段は、自分自身が管理する、起動中のアプリケーションの数を表す識別子の設定に基づいて、起動中のアプリケーションの数が、所定の数未満であるか否かを判定するようにすることができる。
【００１２】
判定手段は、起動中のアプリケーションの数が、所定の数未満ではないと判定した場合、アプリケーションを起動することができないことを、アクセスしてきた情報処理端末に通知するようにすることができる。
【００１３】
本発明の情報処理方法は、情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する情報処理装置の情報処理方法であって、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定ステップと、判定ステップの処理により起動中のアプリケーションの数が所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップとを含むことを特徴とする。
【００１４】
本発明の記録媒体は、情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する処理をコンピュータに実行させるプログラムが記録されている記録媒体であって、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定ステップと、判定ステップの処理により起動中のアプリケーションの数が所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップとを含むことを特徴とする。
【００１５】
本発明のプログラムは、情報処理端末からアクセスされる毎に１つの同じアプリケーションを起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御する処理をコンピュータに実行させるプログラムであって、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かを判定する判定ステップと、判定ステップの処理により起動中のアプリケーションの数が所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップとを含むことを特徴とする。
【００１６】
本発明の情報処理装置および方法、記録媒体、並びにプログラムにおいては、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満であるか否かが判定され、起動中のアプリケーションの数が所定の数未満であると判定された場合、１つのアプリケーションが起動される。
【発明の効果】
【００１７】
本発明によれば、クライアントからのアクセスに応じて起動するサーバ上のアプリケーションの数を制限することができる。
【００１８】
また、本発明によれば、クライアントの処理負担を軽減させることができる。
【発明を実施するための最良の形態】
【００１９】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする実施の形態が本明細書に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００２０】
さらに、この記載は、本明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００２１】
請求項１に記載の情報処理装置は、情報処理端末（例えば、図１のクライアントコンピュータ１）からアクセスされる毎に１つの同じアプリケーション（例えば、図１のWebアプリケーション１２）を起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイス（例えば、非接触ICカード）を制御する情報処理装置（例えば、図１のサーバコンピュータ２）であって、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満（例えば、１未満）であるか否かを判定する判定手段（例えば、図３の識別子判定部４２）と、前記判定手段により起動中のアプリケーションの数が前記所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御手段（例えば、図３のWebアプリケーション起動制御部４３）とを備えることを特徴とする。
【００２２】
請求項２に記載の情報処理装置の前記判定手段は、自分自身が管理する、起動中のアプリケーションの数を表す識別子の設定に基づいて、起動中のアプリケーションの数が、所定の数未満であるか否かを判定することを特徴とする。
【００２３】
請求項３に記載の情報処理装置の前記判定手段は、起動中のアプリケーションの数が、所定の数未満ではないと判定した場合、アプリケーションを起動することができないことを、アクセスしてきた情報処理端末に通知することを特徴とする。
【００２４】
請求項４に記載の情報処理方法は、情報処理端末（例えば、図１のクライアントコンピュータ１）からアクセスされる毎に１つの同じアプリケーション（例えば、図１のWebアプリケーション１２）を起動し、起動したアプリケーションにより、アクセスしてきた情報処理端末に接続または内蔵されているデバイス（例えば、非接触ICカード）を制御する情報処理装置（例えば、図１のサーバコンピュータ２）の情報処理方法であって、情報処理端末からのアクセスがあったとき、アクセスしてきた情報処理端末に接続または内蔵されているデバイスを制御するために既に起動中のアプリケーションの数が、所定の数未満（例えば、１未満）であるか否かを判定する判定ステップ（例えば、図５のステップＳ４４）と、前記判定ステップの処理により起動中のアプリケーションの数が前記所定の数未満であると判定された場合、１つのアプリケーションを起動させる起動制御ステップ（例えば、図５のステップＳ４７）とを含むことを特徴とする。
【００２５】
請求項５に記載の記録媒体に記録されているプログラム、および、請求項６に記載のプログラムにおいても、各ステップが対応する実施の形態（但し一例）は、請求項４に記載の情報処理方法と同様である。
【００２６】
以下、本発明の実施の形態について図を参照して説明する。
【００２７】
図１は、本発明を適用した通信システムの構成例を示す図である。
【００２８】
図１の通信システムは、ネットワークを介して接続されるクライアントコンピュータ１とサーバコンピュータ２から構成される。クライアントコンピュータ１はクライアントアプリケーション１１を実行し、サーバコンピュータ２はWebアプリケーション１２を実行する。
【００２９】
図１の通信システムにおいては、例えば、サーバコンピュータ２により、クライアントコンピュータ１にケーブルなどを介して接続されるリーダライタにユーザにより近接されている非接触ICカードに記憶されている情報の読み書きが行われる（リーダライタと非接触ICカードのいずれも図示せず）。
【００３０】
この、非接触ICカードに記憶されている情報の読み書きを行う処理は、例えば、クライアントコンピュータ１上で実行されているクライアントアプリケーション１１により、サーバコンピュータ２上の所定のURL(Uniform Resource Locator)に対するアクセスが行われ、そのクライアントアプリケーション１１からのアクセスに応じて起動されるWebアプリケーション１２との間で、HTTP(Hyper Text Transfer Protocol)セッションが保たれた１対１のHTTP通信が確立されることで開始される。
【００３１】
サーバコンピュータ２は、アクセスしてきたクライアントアプリケーション１１に対して、１つのWebアプリケーション１２を起動させているか否かを表す識別子を管理している。
【００３２】
サーバコンピュータ２は、クライアントアプリケーション１１からのアクセスを受けたとき、そのときアクセスしてきたクライアントアプリケーション１１との間で各種の処理を行うWebアプリケーション１２を起動させているか否かを識別子の設定に基づいて判定し、Webアプリケーション１２をまだ起動させていないと判定した場合、Webアプリケーション１２を起動させ、反対に、既に起動させていると判定した場合、Webアプリケーション１２の起動を禁止する（起動を行わない）。
【００３３】
これにより、１つのクライアントアプリケーション１１に対しては、常に、１つのWebアプリケーション１２のみが起動され、１つのクライアントアプリケーション１１に対して複数のWebアプリケーション１２が起動されることが防止される。
【００３４】
例えば、１つのクライアントアプリケーション１１との間で各種の処理を行うアプリケーションとして複数のWebアプリケーション１２がサーバコンピュータ２上で起動した場合（同じクライアントアプリケーション１１により同じURLに対するアクセスが複数回行われた場合）、そのクライアントアプリケーション１１は、複数のWebアプリケーション１２を相手として並行に処理を行う必要があるため、その処理負担が大きく、正常に処理を行うことが困難になるが、以上のように、１つのクライアントアプリケーション１１に対しては１つのWebアプリケーション１２のみが起動されるようにすることにより、そのような過剰な処理負担がクライアントコンピュータ１にかかることを抑制することができる。
【００３５】
なお、サーバコンピュータ２のWebアプリケーション１２は、基本的には、クライアントのクライアントアプリケーションからアクセスを受ける毎にその１つがサーバコンピュータ２上で起動するようになされているため、複数のクライアントのクライアントアプリケーションから同時にアクセスを受けた場合、サーバコンピュータ２上では、複数のWebアプリケーション１２（同じアプリケーション）が起動されることになる（この場合、起動した複数のWebアプリケーション１２のそれぞれは、それぞれのクライアントのクライアントアプリケーションとの通信を行う）。
【００３６】
このような、Webアプリケーション１２の起動を制御するサーバコンピュータ２の処理についてはフローチャートを参照して後に詳述する。
【００３７】
図２は、図１のサーバコンピュータ２の構成例を示すブロック図である。
【００３８】
CPU(Central Processing Unit)２１は、ROM(Read Only Memory)２２に記憶されているプログラム、または、記憶部２８からRAM(Random Access Memory)２３にロードされたプログラムに従って各種の処理を実行する。RAM２３にはまた、CPU２１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【００３９】
CPU２１、ROM２２、およびRAM２３は、バス２４を介して相互に接続されている。このバス２４には入出力インタフェース２５も接続されている。
【００４０】
入出力インタフェース２５には、キーボード、マウスなどよりなる入力部２６、LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部２７、ハードディスクなどより構成される記憶部２８、ネットワークを介しての通信処理を行う通信部２９が接続されている。
【００４１】
入出力インタフェース２５にはまた、必要に応じてドライブ３０が接続される。ドライブ３０には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブルメディア３１が適宜装着され、それから読み出されたコンピュータプログラムが必要に応じて記憶部２８にインストールされる。
【００４２】
クライアントコンピュータ１の構成は、図２のサーバコンピュータ２の構成と基本的に同様であるため、その説明は省略する。
【００４３】
図３は、図２のCPU２１により所定のプログラムが実行されることで実現されるサーバコンピュータ２の機能構成例を示すブロック図である。
【００４４】
通信制御部４１は、図２の通信部２９を制御し、ネットワークを介して、クライアントコンピュータ１との間で各種の情報の送受信を行う。
【００４５】
識別子判定部４２は、アクセスしてきたクライアントアプリケーション１１に対して、１つのWebアプリケーション１２を起動させているか否かを表す識別子の設定を管理する。識別子の設定は、クライアントアプリケーション１１との間で確立されたHTTPのセッションのセッションIDや、クライアントアプリケーション１１に割り当てられているIPアドレスなどの識別情報に紐付けられており、それらの識別情報から識別子の設定を確認できるようになされている。
【００４６】
識別子判定部４２は、クライアントコンピュータ１からのアクセスを受けたことが通信制御部４１から通知されてきたとき、アクセスしてきたクライアントアプリケーション１１の識別子の設定を確認し、アクセスしてきたクライアントコンピュータ１に対して、１つのWebアプリケーション１２を既に起動させていると判定した場合、そのときアクセスしてきたクライアントアプリケーション１１に対して、Webアプリケーション１２を起動させることができないことを通知するエラーメッセージを通信制御部４１から送信させる。
【００４７】
一方、アクセスしてきたクライアントアプリケーション１１に対して、１つのWebアプリケーション１２をまだ起動させていないと判定した場合、識別子判定部４２は、Webアプリケーション起動制御部４３にWebアプリケーション１２の起動を指示する。また、このとき、識別子判定部４２は、そのときアクセスしてきたクライアントアプリケーション１１の識別子の設定を、Webアプリケーション１２を既に起動していることが表されるように更新する。
【００４８】
Webアプリケーション起動制御部４３は、Webアプリケーション１２の起動を制御し、識別子判定部４２からWebアプリケーション１２を起動させることが指示された場合、その指示に従ってWebアプリケーション１２を起動させる。
【００４９】
処理部４４は、起動されたWebアプリケーション１２に従って、クライアントコンピュータ１に接続されているデバイスを制御する。
【００５０】
ここで、以上のような構成を有するサーバコンピュータ２とクライアントコンピュータ１の動作について説明する。
【００５１】
始めに、図４のフローチャートを参照して、クライアントコンピュータ１とサーバコンピュータ２の間で行われる処理について説明する。
【００５２】
ステップＳ１において、クライアントコンピュータ１上で既に実行されているクライアントアプリケーション１１は、サーバコンピュータ２のWebアプリケーション１２を起動させ、Webアプリケーション１２との間で処理を開始させるためのURLにアクセスする。このとき、クライアントコンピュータ１とサーバコンピュータ２の間ではHTTPの１つのセッションが確立される。
【００５３】
サーバコンピュータ２の識別子判定部４２は、ステップＳ１１において、識別子の設定の判定を行い、アクセスしてきたクライアントアプリケーション１１の識別子に設定されている値が０であり（１未満であり）、アクセスしてきたクライアントアプリケーション１１に対してWebアプリケーション１２をまだ起動させていないと判定した場合、ステップＳ１２に進み、識別子の値に１を加算する。
【００５４】
なお、識別子に設定される値は、１つのクライアントアプリケーション１１に対して起動させているWebアプリケーション１２の数を表している。また、図５のフローチャートを参照して後述するように、ステップＳ１１で行われる判定において、既にWebアプリケーション１２を起動させていると判定された場合（識別子に設定されている値が１である場合）、アクセスしてきたクライアントアプリケーション１１に対してエラーメッセージが送信される。また、アクセスしてきたクライアントアプリケーション１１の識別子がない場合、そのクライアントアプリケーション１１に対して０の値が設定される識別子が割り当てられる。
【００５５】
ステップＳ４３において、Webアプリケーション起動制御部４３は、Webアプリケーション１２を起動させ、ステップＳ４４において、処理部４４は、クライアントアプリケーション１１に対して最初の応答を行う。
【００５６】
それ以降のステップＳ１５，Ｓ１６（クライアントコンピュータ１側のステップＳ２，Ｓ３）において、クライアントコンピュータ１に接続されているデバイスの制御内容などに応じて、クライアントコンピュータ１のクライアントアプリケーション１１とサーバコンピュータ２のWebアプリケーション１２の間で複数回の通信が行われる。
【００５７】
処理部４４は、Webアプリケーション１２に基づく処理を終了したとき、ステップＳ１７において、クライアントアプリケーション１１に対して最後の通信を行い、処理が終了したことをWebアプリケーション起動制御部４３に通知する。
【００５８】
Webアプリケーション起動制御部４３は、ステップＳ１８において、Webアプリケーション１２を終了させ、Webアプリケーション１２を終了させたことを識別子判定部４２に通知する。
【００５９】
識別子判定部４２は、ステップＳ１９において、クライアントアプリケーション１１に対して起動させているWebアプリケーション１２の数を表す、識別子に設定されている値を１だけ減算し（０に戻し）、処理を終了させる。
【００６０】
次に、図５のフローチャートを参照して、Webアプリケーション１２の起動を制御するサーバコンピュータ２の処理について説明する。
【００６１】
ステップＳ４１において、サーバコンピュータ２の通信制御部４１は、クライアントコンピュータ１のクライアントアプリケーション１１からのアクセスを受け、アクセスを受けたことを識別子判定部４２に通知する。
【００６２】
識別子判定部４２は、ステップＳ４２において、アクセスしてきたクライアントアプリケーション１１に対して識別子が割り当てられているか否かを判定し、識別子が割り当てられていないと判定した場合、ステップＳ４３に進み、０の値が設定される識別子を割り当てる。従って、第１回目のアクセスの際には、アクセスしてきたクライアントアプリケーション１１の識別子に設定される値は０となる。
【００６３】
一方、ステップＳ４２において、アクセスしてきたクライアントアプリケーション１１に対して識別子が割り当てられていると判定した場合、ステップＳ４３はスキップされる。
【００６４】
ステップＳ４４において、識別子判定部４２は、識別子に設定されている値が０であるか否かを判定し、０ではないと判定した場合（所定の数である１未満ではないと判定した場合）、ステップＳ４５に進む。
【００６５】
ステップＳ４５において、識別子判定部４２は、アクセスしてきたクライアントアプリケーション１１に対して、Webアプリケーション１２の起動が失敗したことを通知するメッセージを返信し、処理を終了させる。この場合、メッセージが返信されてきたクライアントアプリケーション１１においては、既に起動されているサーバコンピュータ２の１つのWebアプリケーション１２との間で各種の処理が行われる。
【００６６】
ステップＳ４４において、識別子判定部４２は、アクセスしてきたクライアントアプリケーション１１に対してWebアプリケーション１２を起動させていないため、識別子に設定されている値が０であると判定した場合、ステップＳ４６に進み、その値を１だけ加算する。
【００６７】
ステップＳ４７において、Webアプリケーション起動制御部４３は、Webアプリケーション１２を起動させる。
【００６８】
ステップＳ４８において、処理部４４は、起動されたWebアプリケーション１２に従って処理（Webアプリケーション処理）を行い、ステップＳ４９に進み、処理の終了であるか否かを判定する。
【００６９】
処理部４４は、ステップＳ４９において、処理の終了ではないと判定した場合、ステップＳ４８に戻り、処理を繰り返し、一方、処理の終了であると判定した場合、ステップＳ５０に進む。処理の終了であると判定された場合、そのことが処理部４４からWebアプリケーション起動制御部４３に通知される。
【００７０】
Webアプリケーション起動制御部４３は、ステップＳ５０において、Webアプリケーション１２を終了させ、そのことを識別子判定部４２に通知する。
【００７１】
ステップＳ５１において、識別子判定部４２は、識別子に設定される値を１だけ減算し、処理を終了させる。
【００７２】
以上においては、１つのクライアントアプリケーション１１に対しては、常に、１つのWebアプリケーションのみが起動され、それらのアプリケーションの間で１対１の処理が行われる場合について説明したが、クライアントコンピュータ１の処理能力に応じて、または、制御対象とする、例えば、非接触ICカードなどのクライアントコンピュータ１側のデバイスの数に応じて、１対多の処理が行われるように、１つのクライアントアプリケーション１１に対して、複数のWebアプリケーションが起動されるようにしてもよい。
【００７３】
この場合、識別子に設定される値が、１つのクライアントアプリケーション１１に対して起動されることが許可されるWebアプリケーション１２の所定の数未満であるか否かが図５に示されるような処理においてサーバ２により判定され、所定の数未満である場合にのみ、Webアプリケーション１２の起動が行われることになる。
【００７４】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。
【００７５】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【００７６】
この記録媒体は、図２に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory)，DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（登録商標）(Mini-Disk)を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア３１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM２２や、記憶部２８に含まれるハードディスクなどで構成される。
【００７７】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【００７８】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表わすものである。
【図面の簡単な説明】
【００７９】
【図１】本発明を適用した通信システムの構成例を示す図である。
【図２】サーバコンピュータの構成例を示すブロック図である。
【図３】サーバコンピュータの機能構成例を示すブロック図である。
【図４】クライアントコンピュータとサーバコンピュータの間で行われる処理について説明するフローチャートである。
【図５】Webアプリケーションの起動を制御するサーバコンピュータの処理について説明するフローチャートである。
【符号の説明】
【００８０】
１  クライアントコンピュータ，  ２  サーバコンピュータ，  １１  クライアントアプリケーション，  １２  Webアプリケーション，  ４１  通信制御部，  ４２  識別子判定部，  ４３  Webアプリケーション起動制御部，  ４４  処理部
【図１】
2005196628.tif 000003
【図２】
2005196628.tif 000004
【図３】
2005196628.tif 000005
【図４】
2005196628.tif 000006
【図５】
2005196628.tif 000007