(57)【特許請求の範囲】
【請求項１】
アプリケーションサーバとネットワークを通じて通信が可能なオンライン状態を検出するオンライン状態検出部と、
前記オンライン状態検出部によりオンライン状態が検出されているとき、前記アプリケーションサーバ内のサーバプログラムをダウンロードするダウンロード部と、
前記ダウンロード部によりダウンロードされたサーバプログラムを保存するデータ格納部と、
前記オンライン状態が検出されているときにウェブブラウザが前記アプリケーションサーバ内のサーバプログラムを実行して、前記サーバプログラムの実行結果が前記アプリケーションサーバに保存されるように制御、あるいは、前記ウェブブラウザが前記データ格納部に保存されているサーバプログラムを実行して、前記サーバプログラムの実行結果が前記データ格納部に保存されるように制御する制御部と、
前記オンライン状態が検出されているとき、前記データ格納部に保存されている実行結果を前記アプリケーションサーバにアップロードするとともに、前記データ格納部に保存されている実行結果を消去するアップロード部と
を備えたクライアント装置。
【請求項２】
前記サーバプログラムの実行形態として、オンラインでの実行又はオフラインでの実行を受け付けるとともに、前記サーバプログラムのダウンロード及び前記サーバプログラムの実行結果のアップロードを受け付ける受付部を備え、
前記ダウンロード部は、前記受付部によりサーバプログラムのダウンロードが受け付けられると、前記オンライン状態検出部によりオンライン状態が検出されていれば、前記アプリケーションサーバ内のサーバプログラムをダウンロードし、
前記制御部は、前記受付部によりオンラインでの実行が受け付けられると、前記オンライン状態検出部によりオンライン状態が検出されていれば、前記ウェブブラウザが前記アプリケーションサーバ内のサーバプログラムを実行して、前記サーバプログラムの実行結果が前記アプリケーションサーバに保存されるように制御する一方、前記受付部によりオフラインでの実行が受け付けられると、前記ウェブブラウザが前記データ格納部に保存されているサーバプログラムを実行して、前記サーバプログラムの実行結果が前記データ格納部に保存されるように制御し、
前記アップロード部は、前記受付部によりサーバプログラムの実行結果のアップロードが受け付けられると、前記オンライン状態検出部によりオンライン状態が検出されていれば、前記データ格納部に保存されているサーバプログラムの実行結果を前記アプリケーションサーバにアップロードするとともに、前記データ格納部に保存されている実行結果を消去することを特徴とする請求項１記載のクライアント装置。
【請求項３】
前記オンライン状態検出部によりオンライン状態が検出されているか否かを示す情報を表示するとともに、前記受付部により受け付けられた内容を表示する表示処理部を備えたことを特徴とする請求項２記載のクライアント装置。
【請求項４】
オンライン状態検出部が、アプリケーションサーバとネットワークを通じて通信が可能なオンライン状態を検出し、
ダウンロード部が、前記オンライン状態検出部によりオンライン状態が検出されているとき、前記アプリケーションサーバ内のサーバプログラムをダウンロードして、前記サーバプログラムをデータ格納部に格納し、
制御部が、前記オンライン状態検出部によりオンライン状態が検出されているときにウェブブラウザが前記アプリケーションサーバ内のサーバプログラムを実行して、前記サーバプログラムの実行結果が前記アプリケーションサーバに保存されるように制御、あるいは、前記ウェブブラウザが前記データ格納部に保存されているサーバプログラムを実行して、前記サーバプログラムの実行結果が前記データ格納部に保存されるように制御し、
アップロード部が、前記オンライン状態検出部によりオンライン状態が検出されているとき、前記データ格納部に保存されている実行結果を前記アプリケーションサーバにアップロードするとともに、前記データ格納部に保存されている実行結果を消去する
プログラム実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ウェブブラウザがアプリケーションサーバ内のサーバプログラムを実行するクライアント装置及びプログラム実行方法に関するものである。
【背景技術】
【０００２】
近年、タブレットＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）やノートＰＣをはじめとする携帯用ＰＣの小型化及び高性能化が進んでおり、性能的にも、いわゆるＰＣ（例えば、デスクトップ型のパソコン）との違いがほとんどなくなってきている。
携帯用ＰＣは、携帯性に優れており、通信手段として無線の利用が一般的であるため、屋内屋外の現場や工場内など、一般のＰＣの利用が推奨されない環境でも、利用されるケースが増えている。
携帯用ＰＣでは、インターネットや社内ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワークを通じてアプリケーションサーバと接続し、携帯用ＰＣのＷｅｂブラウザが、アプリケーションサーバ内のＷｅｂアプリケーション等のサーバプログラムを実行するケースがある。
このように、携帯用ＰＣのＷｅｂブラウザが、アプリケーションサーバと接続して、アプリケーションサーバ内のサーバプログラムを実行するケースでは、携帯用ＰＣがサーバプログラムをインストールすることなく、そのサーバプログラムを利用することができる。
【０００３】
ただし、無線通信機器の電波を遮断する要因がある場所、無線通信機器の電波が打ち消されるような大きな電磁波が発生する場所、電波の利用が禁止されている場所などでは、携帯用ＰＣが無線を利用することができないため、携帯用ＰＣのＷｅｂブラウザが、アプリケーションサーバと接続して、アプリケーションサーバ内のサーバプログラムを実行することができない。
なお、アプリケーションサーバ内のサーバプログラムには、いわゆるプログラムの命令コードを示すプログラムデータのほかに、プログラムデータが実行する際に参照するパラメータや、過去の実行結果などを示すリソースデータが含まれている。
【０００４】
以下の特許文献１，２には、アプリケーションサーバと通信が可能なときに、アプリケーションサーバ内のサーバプログラムをダウンロードして、そのサーバプログラムを内部のメモリに格納し、アプリケーションサーバと通信ができないオフライン状態では、内部のメモリに格納しているサーバプログラムを実行するクライアント装置が開示されている。
このクライアント装置によるサーバプログラムの実行は、リソースデータが示すパラメータによって制御されるが、サーバプログラムの実行結果によってはパラメータが更新されるため、更新後のパラメータやサーバプログラムの実行結果を示すリソースデータが内部のメモリに格納される。
【０００５】
このクライアント装置では、次にオンライン状態になったときに、Ｗｅｂブラウザが、アプリケーションサーバ内のサーバプログラムを実行することができるようにするために、内部のメモリに格納しているリソースデータをアプリケーションサーバにアップロードするようにしている。
即ち、内部のメモリに格納しているリソースデータと、アプリケーションサーバ内のサーバプログラムに含まれているリソースデータとが一致していなければ、Ｗｅｂブラウザが、アプリケーションサーバ内のサーバプログラムを実行したときの実行結果と、内部のメモリに格納しているサーバプログラムを実行したときの実行結果とが同じにならなくなるため、オフライン状態で、内部のメモリに格納しているサーバプログラムを実行すると、内部のメモリに格納しているリソースデータをアプリケーションサーバにアップロードするようにしている。
【０００６】
以下の特許文献２では、アプリケーションサーバがリソースデータの同期化を図る同期化プログラムを搭載しており、この同期化プログラムが、クライアント装置との通信が可能な状態であるか否かを監視し、通信が可能な状態が指定時間以上継続していなければ、リソースデータのアップロードの開始要求をクライアント装置に送信しないが、通信が可能な状態が指定時間以上継続していれば、リソースデータのアップロードの開始要求をクライアント装置に送信する。
クライアント装置は、アプリケーションサーバからアップロードの開始要求を受けると、内部のメモリに格納しているリソースデータをアプリケーションサーバにアップロードする。
アプリケーションサーバは、クライアント装置からリソースデータのアップロードを受けると、同期化プログラムが、サーバ内のサーバプログラムに含まれているリソースデータを、クライアント装置からアップロードされたリソースデータに置き換える同期化処理を実行する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】国際公開第２００９／１３９４３７号
【特許文献２】特開２０１０−１２４３４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来のクライアント装置は以上のように構成されているので、リソースデータの同期化を図る同期化プログラムがアプリケーションサーバに搭載されていれば、オフライン状態で、内部のメモリに格納しているサーバプログラムを実行しても、内部のメモリに格納しているリソースデータと、アプリケーションサーバ内のサーバプログラムに含まれているリソースデータとの一致が保たれる。したがって、オフライン状態でのサーバプログラムの実行とオンライン状態でのサーバプログラムの実行とをランダムに繰り返すことができる。しかし、リソースデータの同期化を図る同期化プログラムが搭載されていないアプリケーションサーバからサーバプログラムをダウンロードした場合、内部のメモリに格納しているリソースデータと、アプリケーションサーバ内のサーバプログラムに含まれているリソースデータとの一致が保たれないため、オフライン状態でサーバプログラムを実行すると、その後のオンライン状態でのサーバプログラムの実行は、オフライン状態でのサーバプログラムの実行結果が反映されていないものになる。このため、上位システムにおいてアプリケーションサーバのデータが活用できない。また、オフライン状態でのサーバプログラムの実行とオンライン状態でのサーバプログラムの実行とをランダムに繰り返すことができないという課題があった。
【０００９】
リソースデータの同期化を図るプログラムが搭載されているアプリケーションサーバからサーバプログラムをダウンロードした場合、内部のメモリに格納しているリソースデータをアプリケーションサーバにアップロードすることができるが、リソースデータのアップロード時に、内部のメモリに格納しているリソースデータを消去する手段が搭載されていない。このため、内部のメモリにリソースデータが残ってしまうため、情報セキュリティ上の問題を発生する可能性があるという課題があった。
【００１０】
この発明は上記のような課題を解決するためになされたもので、同期化プログラムが搭載されていないアプリケーションサーバからサーバプログラムをダウンロードした場合でも、上位システムにおいてアプリケーションサーバのデータを活用することができ、また、オフライン状態でのサーバプログラムの実行とオンライン状態でのサーバプログラムの実行とをランダムに繰り返すことができるとともに、情報セキュリティ上の問題の発生を防止することができるクライアント装置及びプログラム実行方法を得ることを目的とする。
【課題を解決するための手段】
【００１１】
この発明に係るクライアント装置は、アプリケーションサーバとネットワークを通じて通信が可能なオンライン状態を検出するオンライン状態検出部と、オンライン状態検出部によりオンライン状態が検出されているとき、アプリケーションサーバ内のサーバプログラムをダウンロードするダウンロード部と、ダウンロード部によりダウンロードされたサーバプログラムを保存するデータ格納部と、オンライン状態が検出されているときにウェブブラウザがアプリケーションサーバ内のサーバプログラムを実行して、サーバプログラムの実行結果がアプリケーションサーバに保存されるように制御、あるいは、ウェブブラウザがデータ格納部に保存されているサーバプログラムを実行して、サーバプログラムの実行結果がデータ格納部に保存されるように制御する制御部とを設け、アップロード部が、オンライン状態が検出されているとき、データ格納部に保存されている実行結果をアプリケーションサーバにアップロードするとともに、データ格納部に保存されている実行結果を消去するようにしたものである。
【発明の効果】
【００１２】
この発明によれば、アップロード部が、オンライン状態が検出されているとき、データ格納部に保存されている実行結果をアプリケーションサーバにアップロードするとともに、データ格納部に保存されている実行結果を消去するように構成したので、オフライン状態でのサーバプログラムの実行結果を反映することができる。そのため、同期化プログラムが搭載されていないアプリケーションサーバからサーバプログラムをダウンロードした場合でも、上位システムにおいてアプリケーションサーバのデータを活用することができる。また、オフライン状態でのサーバプログラムの実行とオンライン状態でのサーバプログラムの実行とをランダムに繰り返すことができるとともに、情報セキュリティ上の問題の発生を防止することができる効果がある。
【図面の簡単な説明】
【００１３】
【図１】この発明の実施の形態１によるクライアント装置とアプリケーションサーバからなるシステムを示す構成図である。
【図２】この発明の実施の形態１によるクライアント装置２のハードウェア構成図である。
【図３】この発明の実施の形態１によるクライアント装置の処理内容であるプログラム実行方法を示すフローチャートである（その１）。
【図４】この発明の実施の形態１によるクライアント装置の処理内容であるプログラム実行方法を示すフローチャートである（その２）。
【図５】この発明の実施の形態１によるクライアント装置がサーバプログラムをダウンロードする際の処理内容を示すフローチャートである。
【図６】この発明の実施の形態１によるクライアント装置がオフラインでサーバプログラムを実行する際の処理内容を示すフローチャートである。
【図７】この発明の実施の形態１によるクライアント装置がサーバプログラムのリソースデータをアップロードする際の処理内容を示すフローチャートである。
【図８】この発明の実施の形態１によるクライアント装置がオンラインでサーバプログラムを実行する際の処理内容を示すフローチャートである。
【図９】アプリケーションサーバ１とクライアント装置２がオンライン状態／オフライン状態であるときに、ユーザが選択可能な動作を示す説明図である。
【図１０】表示装置２２の液晶ディスプレイに表示される動作選択画面の一例を示す説明図である。
【発明を実施するための形態】
【００１４】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面にしたがって説明する。
【００１５】
実施の形態１．
図１はこの発明の実施の形態１によるクライアント装置とアプリケーションサーバからなるシステムを示す構成図である。
図１において、アプリケーションサーバ１はＷｅｂアプリケーションであるサーバプログラムを提供する機能を備えているコンピュータである。
クライアント装置２はアプリケーションサーバ１内のサーバプログラムを実行するＷｅｂブラウザ（ウェブブラウザ）を搭載しているコンピュータであり、例えば、タブレット端末やノートＰＣなどの携帯端末が想定される。
【００１６】
図２はこの発明の実施の形態１によるクライアント装置２のハードウェア構成図であり、クライアント装置２は、図２に示すように、ネットワーク３に対するインタフェースを備えたネットワーク機器である通信部２１と、液晶ディスプレイなどによって構成された表示装置２２と、キーボードやタッチパネルなどで構成された入力装置２３と、サーバプログラムなどを保存する記憶装置２４と、各種の制御を司るＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２５とから構成されている。
【００１７】
ネットワーク３は例えばインターネット、無線ＬＡＮ、携帯電話網、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍｓ）、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＭＡＸ（登録商標）などが想定され、クライアント装置２とアプリケーションサーバ１が、ネットワーク３を通じて、相互に通信を行う。
【００１８】
アプリケーションサーバ１の通信部１１はネットワーク３に対するインタフェースを備えたネットワーク機器であり、ネットワーク機器としては、例えば、ＬＡＮカードなどのネットワークカードが想定される。
データ格納部１２は例えばＲＡＭやハードディスクなどの記憶装置で構成されており、Ｗｅｂアプリケーションであるサーバプログラムを格納している。
サーバプログラムは、クライアント装置２のＷｅｂブラウザ３１から送信されたリクエストを処理するプログラムであり、いわゆるプログラムの命令コードを示すプログラムデータ１３と、プログラムデータ１３が実行する際に参照するパラメータや過去の実行結果などを示すリソースデータ１４とから構成されている。
また、プログラムデータ１３は、例えば、Ｃ言語やＪａｖａ（登録商標）で構築されたバイナリファイルや、ＰＨＰ、ＲｕｂｙやＰｅｒｌで記述されたスクリプトファイルである。
図１では、アプリケーションサーバ１の演算処理装置であるＣＰＵを記述していないが、ＣＰＵが通信部１１やデータ格納部１２の動作を管理している。
【００１９】
クライアント装置２のＷｅｂブラウザ３１はＣＰＵ２５によって制御されるソフトウェアであり、例えば、ＨＴＭＬ、ＪａｖａＳｃｒｉｐｔ（登録商標）、Ｆｌａｓｈ（登録商標）などによって命令コードが実行されている。Ｗｅｂブラウザ３１はユーザの操作に応じて表示内容を変更する処理を実施するほか、アプリケーションサーバ１のデータ格納部１２に格納されているサーバプログラムを実行する処理などを実施する。
データ格納部３２は記憶装置２４上に構築され、ダウンロード部４３によりダウンロードされたサーバプログラムのプログラムデータ３３を保存するとともに、そのサーバプログラムのリソースデータ３４を保存する。
【００２０】
表示処理部３５はＣＰＵ２５によって制御されるソフトウェアであり、例えば、オンライン／オフライン判定部４２によりオンライン状態であると判定されていれば、オンライン状態である旨を示す情報を表示装置２２に表示し、オンライン／オフライン判定部４２によりオフライン状態であると判定されていれば、オフライン状態である旨を示す情報を表示装置２２に表示する処理を実施する。
受付部３６はＣＰＵ２５によって制御されるソフトウェアであり、入力装置２３から入力される情報に基づいて、サーバプログラムの実行形態として、オンラインでの実行又はオフラインでの実行を受け付ける処理を実施する。
また、受付部３６は入力装置２３から入力される情報に基づいて、サーバプログラムのダウンロードを受け付けるとともに、サーバプログラムのリソースデータ３４のアップロードを受け付ける処理を実施する。
【００２１】
サーバプログラム同期部４１はＣＰＵ２５によって制御されるソフトウェアであり、オンライン／オフライン判定部４２、ダウンロード部４３、ブラウザ接続先選択部４４及びアップロード部４５から構成されている。
オンライン／オフライン判定部４２はクライアント装置２がアプリケーションサーバ１とネットワーク３を通じて通信が可能なオンライン状態であるのか、通信が不可能なオフライン状態であるのかを判定する処理を実施する。なお、オンライン／オフライン判定部４２はオンライン状態検出部を構成している。
【００２２】
ダウンロード部４３は受付部３６によりサーバプログラムのダウンロードが受け付けられると、オンライン／オフライン判定部４２によりオンライン状態であると判定されていれば、アプリケーションサーバ１のデータ格納部１２に格納されているサーバプログラム（プログラムデータ１３、リソースデータ１４）をダウンロードし、そのサーバプログラムのプログラムデータ１３をプログラムデータ３３としてデータ格納部３２に格納し、そのサーバプログラムのリソースデータ１４をリソースデータ３４としてデータ格納部３２に格納する。
【００２３】
ブラウザ接続先選択部４４は受付部３６によりオンラインでの実行が受け付けられると、オンライン／オフライン判定部４２によりオンライン状態であると判定されていれば、Ｗｅｂブラウザ３１がアプリケーションサーバ１のデータ格納部１２に格納されているサーバプログラムのプログラムデータ１３を実行して、そのプログラムデータ１３の実行結果を含むリソースデータ１４がデータ格納部１２に保存されるように制御する。
また、ブラウザ接続先選択部４４は受付部３６によりオフラインでの実行が受け付けられると、Ｗｅｂブラウザ３１がデータ格納部３２に保存されているサーバプログラムのプログラムデータ３３を実行して、そのプログラムデータ３３の実行結果を含むリソースデータ３４がデータ格納部３２に保存されるように制御する。なお、ブラウザ接続先選択部４４は制御部を構成している。
【００２４】
アップロード部４５は受付部３６によりサーバプログラムのリソースデータ３４のアップロードが受け付けられると、オンライン／オフライン判定部４２によりオンライン状態であると判定されていれば、データ格納部３２に保存されているサーバプログラムのリソースデータ３４をアプリケーションサーバ１にアップロードするとともに、データ格納部３２に保存されているリソースデータ３４を消去する処理を実施する。
【００２５】
次に動作について説明する。
図３及び図４はこの発明の実施の形態１によるクライアント装置の処理内容であるプログラム実行方法を示すフローチャートである。
図５はこの発明の実施の形態１によるクライアント装置がサーバプログラムをダウンロードする際の処理内容を示すフローチャートである。
図６はこの発明の実施の形態１によるクライアント装置がオフラインでサーバプログラムを実行する際の処理内容を示すフローチャートである。
図７はこの発明の実施の形態１によるクライアント装置がサーバプログラムのリソースデータをアップロードする際の処理内容を示すフローチャートである。
図８はこの発明の実施の形態１によるクライアント装置がオンラインでサーバプログラムを実行する際の処理内容を示すフローチャートである。
【００２６】
図９はアプリケーションサーバ１とクライアント装置２がオンライン状態／オフライン状態であるときに、ユーザが選択可能な動作を示す説明図である。
オンライン状態であるときは、図９に示すように、ユーザは２つの動作のうち、いずれかの動作を選択することができる。
即ち、ユーザは、Ｗｅｂブラウザ３１がアプリケーションサーバ１のデータ格納部１２に格納されているサーバプログラムのプログラムデータ１３を実行する動作、または、Ｗｅｂブラウザ３１がデータ格納部３２に保存されているサーバプログラムのプログラムデータ３３を実行する動作を選択することができる。
一方、オフライン状態であるときは、図９に示すように、ユーザは、Ｗｅｂブラウザ３１がデータ格納部３２に保存されているサーバプログラムのプログラムデータ３３を実行する動作のみを選択することができる。
【００２７】
まず、クライアント装置２のオンライン／オフライン判定部４２は、クライアント装置２がアプリケーションサーバ１とネットワーク３を通じて通信が可能なオンライン状態であるのか、通信が不可能なオフライン状態であるのかを判定する（図３のステップＳＴ１）。
例えば、オンライン／オフライン判定部４２が、通信の応答を求めるリクエスト信号をアプリケーションサーバ１に送信し、アプリケーションサーバ１がリクエスト信号に応じて応答信号を返信してくれば、オンライン状態であると判断する。一方、リクエスト信号をアプリケーションサーバ１に送信しても、そのリクエスト信号に応じて応答信号を返信してこなければ、オフライン状態であると判断する。
【００２８】
クライアント装置２の表示処理部３５は、オンライン／オフライン判定部４２によりオンライン状態であると判定されていれば（ステップＳＴ２：ＹＥＳの場合）、オンライン状態である旨を示す情報を表示装置２２に表示し（ステップＳＴ３）、オンライン／オフライン判定部４２によりオフライン状態であると判定されていれば（ステップＳＴ２：ＮＯの場合）、オフライン状態である旨を示す情報を表示装置２２に表示する（ステップＳＴ４）。
ここで、図１０は表示装置２２の液晶ディスプレイに表示される動作選択画面の一例を示す説明図である。
具体的には、表示処理部３５は、図１０に示すような動作選択画面を表示し、オンライン／オフライン判定部４２によりオンライン状態であると判定されていれば、動作選択画面中のオンライン時点灯ランプ１０１を点灯する。一方、オンライン／オフライン判定部４２によりオフライン状態であると判定されていれば、動作選択画面中のオフライン時点灯ランプ１０２を点灯する。
【００２９】
クライアント装置２の受付部３６は、サーバプログラムの実行形態として、オンラインでの実行又はオフラインでの実行を受け付ける処理を実施する（ステップＳＴ５、ＳＴ６）。
具体的には、表示処理部３５が図１０の動作選択画面を表示しているとき、ユーザが入力装置２３を操作して、オンライン動作の選択ボタン１０３をクリックすると、受付部３６がサーバプログラムの実行形態として、オンラインでの実行を受け付けるようにする。
ただし、オンラインでの実行は、オンライン／オフライン判定部４２によりオンライン状態であると判定されている場合に限り受け付けられ、オフライン状態であると判定されていれば、受け付けられない。
一方、ユーザが入力装置２３を操作して、オフライン動作の選択ボタン１０４をクリックすると、受付部３６がサーバプログラムの実行形態として、オフラインでの実行を受け付けるようにする。
オフラインでの実行については、オンライン状態であるか、オフライン状態であるかにかかわらず受け付けられる。
【００３０】
クライアント装置２の受付部３６は、オフラインでの実行を受け付けると（ステップＳＴ７：ＹＥＳの場合）、サーバプログラムのダウンロードを受け付ける処理を実施する（図４のステップＳＴ８）。
具体的には、表示処理部３５が図１０の動作選択画面を表示しているとき、ユーザが入力装置２３を操作して、データダウンロードの選択ボタン１０５をクリックすると、受付部３６がサーバプログラムのダウンロードを受け付けるようにする。
ただし、サーバプログラムのダウンロードは、オンライン／オフライン判定部４２によりオンライン状態であるのか、オフライン状態であるのかが判定され（図５のステップＳＴ２１）、その判定結果がオンライン状態である旨を示しているときに（ステップＳＴ２２：ＹＥＳの場合）、データダウンロードの選択ボタン１０５がクリックされた場合に限り受け付けられ、オンライン／オフライン判定部４２の判定結果がオフライン状態である旨を示しているときに、データダウンロードの選択ボタン１０５がクリックされても受け付けられない。
したがって、仮に、サーバプログラムの実行形態として、オフラインでの実行が受け付けられた時点ではオンライン状態であっても、ユーザがデータダウンロードの選択ボタン１０５をクリックする際に、オフライン状態に変わっていれば、サーバプログラムのダウンロードが受け付けられない。
【００３１】
クライアント装置２のダウンロード部４３は、受付部３６がサーバプログラムのダウンロードを受け付けると（図４のステップＳＴ９：ＹＥＳの場合）、アプリケーションサーバ１のデータ格納部１２に格納されているサーバプログラム（プログラムデータ１３、リソースデータ１４）をダウンロードし、そのサーバプログラムのプログラムデータ１３をプログラムデータ３３としてデータ格納部３２に格納し、そのサーバプログラムのリソースデータ１４をリソースデータ３４としてデータ格納部３２に格納する（図４のステップＳＴ１０、図５のステップＳＴ２３）。
【００３２】
クライアント装置２のブラウザ接続先選択部４４は、ダウンロード部４３がサーバプログラムのプログラムデータ３３及びリソースデータ３４をデータ格納部３２に格納すると、Ｗｅｂブラウザ３１を起動して、データ格納部３２に保存されているサーバプログラムのプログラムデータ３３の実行を指示する指令をＷｅｂブラウザ３１に出力する（図６のステップＳＴ３１）。
クライアント装置２のＷｅｂブラウザ３１は、ブラウザ接続先選択部４４からプログラムデータ３３の実行を指示する指令を受けると、データ格納部３２に保存されているサーバプログラムのリソースデータ３４に含まれているパラメータを参照しながら、サーバプログラムのプログラムデータ３３を実行し、プログラムデータ３３の実行結果や、プログラムデータ３３の実行に伴うパラメータの更新情報等をリソースデータ３４が含むように、そのリソースデータ３４を更新する（図４のステップＳＴ１１、図６のステップＳＴ３２）。
【００３３】
図３及び図４のフローチャートでは、受付部３６がサーバプログラムの実行形態として、オフラインでの実行を受け付けた後、ダウンロード部４３がサーバプログラムをダウンロードしてから、Ｗｅｂブラウザ３１がサーバプログラムを実行する例を示しているが、既に、ダウンロード部４３がサーバプログラムをダウンロードしている場合には、受付部３６がサーバプログラムの実行形態として、オフラインでの実行を受け付けた後、ダウンロード部４３がサーバプログラムをダウンロードすることなく、Ｗｅｂブラウザ３１がサーバプログラムを実行するようにしてもよい。
ただし、後述するアップロード部４５が、データ格納部３２に保存されているサーバプログラムのリソースデータ３４をアップロードして、既に、リソースデータ３４を消去している状況下では、ダウンロード部４３がサーバプログラムのリソースデータ１４をダウンロードしてからでないと、Ｗｅｂブラウザ３１がサーバプログラムを実行することができない。
【００３４】
クライアント装置２の受付部３６は、Ｗｅｂブラウザ３１がデータ格納部３２に保存されているサーバプログラムのプログラムデータ３３を実行すると、サーバプログラムのリソースデータ３４のアップロードを受け付ける処理を実施する（図４のステップＳＴ１２）。
具体的には、表示処理部３５が図１０の動作選択画面を表示しているとき、ユーザが入力装置２３を操作して、データアップロードの選択ボタン１０６をクリックすると、受付部３６がサーバプログラムのリソースデータ３４のアップロードを受け付けるようにする。
ただし、リソースデータ３４のアップロードは、オンライン／オフライン判定部４２によりオンライン状態であるのか、オフライン状態であるのかが判定され（図７のステップＳＴ４１）、その判定結果がオンライン状態である旨を示しているときに（ステップＳＴ４２：ＹＥＳの場合）、データアップロードの選択ボタン１０６がクリックされた場合に限り受け付けられ、オンライン／オフライン判定部４２の判定結果がオフライン状態である旨を示しているときに、データアップロードの選択ボタン１０６がクリックされても受け付けられない。
したがって、仮に、サーバプログラムの実行形態として、オフラインでの実行が受け付けられた時点ではオンライン状態であっても、ユーザがデータアップロードの選択ボタン１０６をクリックする際に、オフライン状態に変わっていれば、リソースデータ３４のアップロードが受け付けられない。
【００３５】
クライアント装置２のアップロード部４５は、受付部３６がリソースデータ３４のアップロードを受け付けると（図４のステップＳＴ１３：ＹＥＳの場合）、データ格納部３２に保存されているサーバプログラムのリソースデータ３４がアプリケーションサーバ１のデータ格納部１２に保存されるように、そのリソースデータ３４をアプリケーションサーバ１にアップロードする（図４のステップＳＴ１４、図７のステップＳＴ４４）。
これにより、アプリケーションサーバ１のデータ格納部１２に格納されているリソースデータ１４は、クライアント装置２からアップロードされたリソースデータ３４に置き換えられる。
アップロード部４５は、データ格納部３２に保存されているサーバプログラムのリソースデータ３４をアップロードすると、データ格納部３２に保存されているリソースデータ３４を消去する（図４のステップＳＴ１５、図７のステップＳＴ４５）。
【００３６】
クライアント装置２のブラウザ接続先選択部４４は、受付部３６がサーバプログラムの実行形態として、オンラインでの実行を受け付けると（図３のステップＳＴ１５：ＹＥＳの場合）、Ｗｅｂブラウザ３１を起動して、アプリケーションサーバ１のデータ格納部１２に保存されているサーバプログラムのプログラムデータ１３の実行を指示する指令をＷｅｂブラウザ３１に出力する（図８のステップＳＴ５１）。
ここで、受付部３６によるオンラインでの実行の受け付けは、上述したように、表示処理部３５が図１０の動作選択画面を表示しているとき、ユーザが入力装置２３を操作して、オンライン動作の選択ボタン１０３をクリックすることで受け付けられるが、オンライン／オフライン判定部４２によりオンライン状態であると判定されている場合に限り受け付けられ、オフライン状態であると判定されていれば、受け付けられない。
【００３７】
クライアント装置２のＷｅｂブラウザ３１は、ブラウザ接続先選択部４４からプログラムデータ１３の実行を指示する指令を受けると、アプリケーションサーバ１のデータ格納部１２に保存されているサーバプログラムのリソースデータ１４に含まれているパラメータを参照しながら、サーバプログラムのプログラムデータ１３を実行し、プログラムデータ１３の実行結果や、プログラムデータ１３の実行に伴うパラメータの更新情報等をリソースデータ１４が含むように、そのリソースデータ１４を更新する（図３のステップＳＴ１６、図８のステップＳＴ５２）。
【００３８】
以上で明らかなように、この実施の形態１によれば、アップロード部４５が、オンライン状態が検出されているとき、データ格納部３２に保存されているサーバプログラムのリソースデータ３４をアプリケーションサーバ１にアップロードするとともに、データ格納部３２に保存されているリソースデータ３４を消去するように構成したので、オフライン状態でのサーバプログラムの実行結果を反映することができる。そのため、データ格納部３２に保存されているリソースデータ３４と、データ格納部１２に保存されているリソースデータ１４との同期化を図る同期化プログラムが搭載されていないアプリケーションサーバ１からサーバプログラムをダウンロードした場合でも、上位システムにおいてアプリケーションサーバ１のデータを活用することができる。また、オフライン状態でのサーバプログラムの実行とオンライン状態でのサーバプログラムの実行とをランダムに繰り返すことができるとともに、情報セキュリティ上の問題の発生を防止することができる効果を奏する。
【００３９】
また、この実施の形態１によれば、入力装置２３から入力される情報に基づいて、サーバプログラムのリソースデータ３４のアップロードを受け付ける受付部３６を備え、アップロード部４５が、受付部３６によりサーバプログラムのリソースデータ３４のアップロードが受け付けられたとき、データ格納部３２に保存されているサーバプログラムのリソースデータ３４をアプリケーションサーバ１にアップロードするように構成したので、ユーザが意図しないタイミングでリソースデータ３４のアップロードが実行されるのを防ぐことができる効果を奏する。
リソースデータ３４のアップロード時には、クライアント装置２におけるＣＰＵ２５の処理負荷が高まるが、例えば、上記の特許文献２では、クライアント装置が、アプリケーションサーバからアップロードの開始要求を受けると、自動的にリソースデータのアップロードを開始するようにしている。したがって、アプリケーションサーバからアップロードの開始要求を受けると、ユーザが意図しないタイミングであっても、自動的にリソースデータのアップロードが実行される。このため、例えば、ＣＰＵが、ダウンロード済みのサーバプログラムを実行しているタイミングで、リソースデータのアップロードが開始される可能性がある。このようなタイミングで、リソースデータのアップロードが開始された場合、サーバプログラムの実行が妨げられることがある。また、ＣＰＵが、リアルタイム性が要求される処理を実行しているタイミングで、リソースデータのアップロードが開始される可能性がある。このようなタイミングで、リソースデータのアップロードが開始された場合、処理のリアルタイム性が損なわれてしまうことがある。
この実施の形態１では、受付部３６によりサーバプログラムのリソースデータ３４のアップロードが受け付けられたタイミング、即ち、ユーザが意図するタイミングで、アップロード部４５が、リソースデータ３４のアップロードを実行するので、サーバプログラムの実行やリアルタイム性が要求される処理の実行等を妨げる状況の発生を防止することができる。
【００４０】
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【符号の説明】
【００４１】
１  アプリケーションサーバ、２  クライアント装置、３  ネットワーク、１１  通信部、１２  データ格納部、１３  サーバプログラムのプログラムデータ、１４  サーバプログラムのリソースデータ、２１  通信部、２２  表示装置、２３  入力装置、２４  記憶装置、２５  ＣＰＵ、３１  Ｗｅｂブラウザ（ウェブブラウザ）、３２  データ格納部、３３  サーバプログラムのプログラムデータ、３４  サーバプログラムのリソースデータ、３５  表示処理部、３６  受付部、４１  サーバプログラム同期部、４２  オンライン／オフライン判定部（オンライン状態検出部）、４３  ダウンロード部、４４  ブラウザ接続先選択部（制御部）、４５  アップロード部、１０１  オンライン時点灯ランプ、１０２  オフライン時点灯ランプ、１０３  オンライン動作の選択ボタン、１０４  オフライン動作の選択ボタン、１０５  データダウンロードの選択ボタン、１０６  データアップロードの選択ボタン。
【図１】
0006399965.tif 000002
【図２】
0006399965.tif 000003
【図３】
0006399965.tif 000004
【図４】
0006399965.tif 000005
【図５】
0006399965.tif 000006
【図６】
0006399965.tif 000007
【図７】
0006399965.tif 000008
【図８】
0006399965.tif 000009
【図９】
0006399965.tif 000010
【図１０】
0006399965.tif 000011