(57)【要約】【課題】表現力やレスポンスの良いユーザインターフェースオブジェクトをネットワーク経由で遠隔操作するシステムの提供。【解決手段】サーバ装置１００上で動作するサーバモジュール及びアプリケーションと、前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラ１２３とを有すると共に前記クライアント２００上で動作するブラウザ２１０と、前記ブラウザ２１０内で動作し前記ＧＵＩリモート中継ライブラリ１２３と連携して前記アプリケーションの遠隔操作を実現するビューワプログラム２１１とを有し、前記ビューワプログラム２１１はクライアント２００の環境毎に複数用意され且つ前記Ｗｅｂサーバ１１０は前記クライアント２００ヶの環境に応じてビューワプログラム２１１を選択し、前記クライアント２００に送出する機能を有する。【選択図】    図１
2005025463.tif 000002
【特許請求の範囲】
【請求項１】
通信回線によりサーバ装置及びクライアントが接続され、前記サーバ装置上で動作するサーバモジュール及びアプリケーションと、前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリとを有すると共に前記クライアント上で動作するブラウザと、前記ブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムとを有するサーバクライアントシステムにおいて、
前記ビューワプログラムはクライアントの環境毎に複数用意され且つ前記サーバモジュールは前記クライアントの環境に応じてビューワプログラムを選択し、前記クライアントに送出する機能を有することを特徴とするサーバクライアントシステム。
【請求項２】
前記アプリケーション及び前記ＧＵＩリモート中継ライブラリは、アプリケーション起動機構を含んだ常駐プログラムとして動作し、当該常駐プログラムは複数のアプリケーションを内部で動作させることが可能であり、前記ビューワプログラムと前記常駐プログラムの間の通信経路ではアプリケーション遠隔操作に必要な通信に加えてアプリケーション起動に必要な通信を行うことを特徴とする請求項１記載のサーバクライアントシステム。
【請求項３】
前記ビューワプログラムは、前記サーバ装置からダウンロードされるものであることを特徴とする請求項１記載のサーバクライアントシステム。
【請求項４】
通信回線によりサーバ装置及びクライアントが接続され、前記サーバ装置上で動作するサーバモジュール及びアプリケーションと、前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリとを有すると共に前記クライアント上で動作するブラウザと、前記ブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムとを有するサーバクライアントシステムにおいて、
前記ビューワプログラムは、クライアントの環境毎に複数用意され、
前記サーバモジュールは、前記クライアントの環境毎に複数用意されたビューワプログラムを、前記クライアントの環境に応じて選択し、前記クライアントに送出する機能を有することを特徴とするサーバ装置。
【請求項５】
サーバモジュール、アプリケーション及び前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリを有するサーバ装置の前記アプリケーションを、ブラウザ及びこのブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムを有するクライアントにて遠隔操作する方法において、
前記ビューワプログラムは前記クライアントの環境毎に複数用意し、
前記サーバモジュールは前記クライアントの環境に応じてビューワプログラムを選択し、
該選択した前記ビューワプログラムを前記クライアントに送出することを特徴とする方法。
【請求項６】
サーバモジュール、アプリケーション及び前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリを有するサーバ装置の前記アプリケーションを、ブラウザ及びこのブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムを有するクライアントにて遠隔操作するプログラムにおいて、
前記サーバ装置は前記クライアントの環境毎の複数のビューワプログラムを用意した上で、当該サーバ装置に、
前記サーバモジュールにより前記クライアントの環境に応じてビューワプログラムを選択するステップと、
該選択した前記ビューワプログラムを前記クライアントに送出するステップとを実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サーバに備えられたアプリケーションを、クライアントにて遠隔操作することが可能なサーバクライアントシステム及びサーバ並びにサーバのアプリケーションをクライアントにて遠隔操作する方法及びプログラム関する。
【０００２】
【従来の技術】
この種のサーバクライアントシステムとして、ＨＴＭＬ／ＸＭＬ等のページ記述言語を用いたＷｅｂアプリケーションシステムについて説明する。
【０００３】
図３において、Ｗｅｂサーバ１Ａ及びアプリケーションサーバ１Ｂを有するサーバ装置１とクライアント２，３とは、公衆電話回線、インターネット等の各種のネットワーク４を介して接続されている。ここに、クライアント２，３としては、ネットワーク４に有線で接続されているパーソナルコンピュータや無線装置５を経由したモバイル情報端末等が例示される。
【０００４】
クライアント２，３が有するユーザーインターフェースはページ記述言語で記述されており、クライアント２，３がデータベースの検索等を行う場合、当該処理はサーバ装置１にて実行され、処理結果がクライアント２，３のブラウザによって表示される。
【０００５】
かかるシステムにおいては、クライアント２，３の各種デバイスに搭載されたブラウザのみを用いてユーザインターフェースを提供でき、クライアント２，３へのソフトウェアインストールや保守等が不要である利点がある。また、クライアント２，３のブラウザがデバイス依存部分を吸収することになるので、クライアント２，３は環境依存性が削減されたものとなる利点もある。
【０００６】
一方、図４は、この種のサーバクライアントシステムとして、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）リモート中継ライブラリを用いた例であり、サーバ装置６とクライアント７とはネットワーク８を介して接続されている。
【０００７】
サーバ装置６は、アプリケーション６Ａとリンクして動作するＧＵＩリモート中継ライブラリ６Ｂを有する。また、アプリケーション６Ａを起動した時に、クライアント７のビューワプログラム７Ａは、アプリケーション６Ａと通信接続する。なお、このビューワプログラム７Ａは予めクライアント７にインストールする形態又はアプリケーション６Ａの起動前に動的にサーバ装置６からダウンロードして起動する形態がある。なお、後者のビューワプログラム７Ａの起動形態としては、ブラウザを使用してビューワプログラム７ＡをＪａｖａアプレットとして起動する方法がある。
【０００８】
アプリケーション６Ａからの画面表示命令等のＧＵＩ命令は、ビューワプログラム７Ａに中継し、ビューワプログラム７Ａは、当該ＧＵＩ命令を解釈・処理し、例えば、クライアント７にモニタ７Ｂに表示を行う。
【０００９】
また、クライアント７のモニタ７Ｂの画面における操作として例えば、ボタンを押した等の操作は、ビューワプログラム７Ａを介してＧＵＩリモート中継ライブラリ６Ｂに中継する。次いで、ＧＵＩリモート中継ライブラリ６Ｂは、クライアント７における操作をアプリケーション６Ａに伝え、アプリケーション６Ａは、当該操作に応じた処理、例えば、次の画面に進む等の処理を行うことになる。
【００１０】
かかるＧＵＩリモート中継ライブラリ６Ｂを用いるサーバクライアントシステムにおいては、アプリケーション開発者は、クライアント７の操作であるのに、あたかもサーバ装置６上で画面表示されるアプリケーションを作成するように簡易にアプリケーション開発をすることができる利点がある。
【００１１】
また、計算機の機能をオブジェクト指向言語を利用して容易に分散させる技術として、アプリケーションを備えるマシンの動作の一部を、他のマシンに実行させる公知例がある（特許文献１）。
【００１２】
【特許文献１】
特開２０００−２９３３７５（第１頁−第１５頁、図１〜図１６）
【００１３】
【発明が解決しようとする課題】
しかしながら、上記した従来技術においては、ページ記述言語の代表であるＨＴＭＬ／ＸＭＬ等が元々閲覧を目的に考えられた言語であるため、クライアントで動作するＪａｖａアプレット等のプログラムを用いたシステムと比較して表現力やレスポンスが貧弱で、使い勝手が悪い等の問題があった。
【００１４】
例えば、画面の一部のみ更新されれば良い場合でも、ページ単位での更新が必要となる。またＧＵＩ関連のボタン等の部品からのボタンが押された等のイベント通知の仕組みが貧弱である。
【００１５】
さらにサーバから非同期にデータを送信することができない等の問題がある。
【００１６】
またさらに、特許文献１の技術は、具体的に利用形態としては、サーバ、クライアントの区別を意識することなく無く、分散化プログラムを開発する等のものであり、クライアントによるサーバーの遠隔操作を行うものではない。
【００１７】
本発明の目的は、表現力やレスポンスの良いユーザインターフェースオブジェクトをネットワーク経由で操作することができるような、サーバクライアントシステム及びサーバ並びにサーバのアプリケーションをクライアントにて遠隔操作する方法及びプログラムを提供することを目的とする。
【００１８】
【課題を解決するための手段】
上記目的を達成するために本発明は、通信回線によりサーバ装置及びクライアントが接続され、前記サーバ装置上で動作するサーバモジュール及びアプリケーションと、前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリとを有すると共に前記クライアント上で動作するブラウザと、前記ブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムとを有するサーバクライアントシステムにおいて、
前記ビューワプログラムはクライアントの環境毎に複数用意され且つ前記サーバモジュールは前記クライアントの環境に応じてビューワプログラムを選択し、前記クライアントに送出する機能を有することを特徴とするサーバクライアントシステム、である。
【００１９】
また本発明は、通信回線によりサーバ装置及びクライアントが接続され、前記サーバ装置上で動作するサーバモジュール及びアプリケーションと、前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリとを有すると共に前記クライアント上で動作するブラウザと、前記ブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムとを有するサーバクライアントシステムにおいて、
前記ビューワプログラムは、クライアントの環境毎に複数用意され、
前記サーバモジュールは、前記クライアントの環境毎に複数用意されたビューワプログラムを、前記クライアントの環境に応じて選択し、前記クライアントに送出する機能を有することを特徴とするサーバ装置、である。
【００２０】
さらに本発明は、サーバモジュール、アプリケーション及び前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリを有するサーバ装置の前記アプリケーションを、ブラウザ及びこのブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムを有するクライアントにて遠隔操作する方法において、
前記ビューワプログラムは前記クライアントの環境毎に複数用意し、
前記サーバモジュールは前記クライアントの環境に応じてビューワプログラムを選択し、
該選択した前記ビューワプログラムを前記クライアントに送出することを特徴とする方法、である。
【００２１】
またさらに本発明は、サーバモジュール、アプリケーション及び前記アプリケーションとリンクして動作するＧＵＩリモート中継ライブラリを有するサーバ装置の前記アプリケーションを、ブラウザ及びこのブラウザ内で動作し前記ＧＵＩリモート中継ライブラリと連携して前記アプリケーションの遠隔操作を実現するビューワプログラムを有するクライアントにて遠隔操作するプログラムにおいて、
前記サーバ装置は前記クライアントの環境毎の複数のビューワプログラムを用意した上で、当該サーバ装置に、
前記サーバモジュールにより前記クライアントの環境に応じてビューワプログラムを選択するステップと、
該選択した前記ビューワプログラムを前記クライアントに送出するステップとを実行させるプログラム、である。
【００２２】
本発明によるサーバクライアントシステム及びサーバ並びにサーバ装置のアプリケーションをクライアントにて遠隔操作する方法及びプログラムによれば、ユーザは、クライアントのブラウザ内のビューワプログラムを操作することで、サーバ装置のＧＵＩリモート中継ライブラリと連携させることにより、クライアントマシンの環境に応じた適切なビューワプログラムを選択し、クライアントに送出することができるので、複数種類のクライアントからサーバ装置上のアプリケーションの遠隔操作が可能となり、ページベースのユーザインターフェースと比較して、表現力やレスポンスの高いユーザインターフェースを実現できる。
【００２３】
一方、ユーザは、サーバからダウンロードされるビューワプログラムを意識的に選択する必要はないため、ページベース記述言語を用いたシステムと同様に、デバイスを意識せずにアプリケーションサービスを受けることができる。
【００２４】
【発明の実施の形態】
以下、図１及び図２を参照して本発明の一実施形態のシステムを説明する。
【００２５】
図１は本実施形態のサーバクライアントシステムを示しており、当該システムにおいては、サーバ装置のアプリケーションをクライアントにて遠隔操作する方法が実施される。
【００２６】
図１において、サーバ装置１００とクライアント２００及びサーバ装置１００とクライアント３００はそれぞれ通信回線により物理的に接続されている。また、サーバ装置１００上には、Ｗｅｂサーバ１１０及びアプリケーションデーモン１２０が常駐している。
【００２７】
ここに、２つのクライアント２００，３００に関しては説明が重複する部分が多いため、基本的に一のクライアント２００について説明し、必要に応じ後者のクライアント３００を交えて説明することとする。また、クライアント２００，３００は、デスクトップ型情報端末、携帯型情報端末等の各種の情報端末を含むものである。
【００２８】
Ｗｅｂサーバ１１０内の処理部分として、Ｓｅｒｖｌｅｔ処理部１１１及びビューワ選択部１１２がある。Ｓｅｒｖｌｅｔ処理部１１１は、ブラウザ等によるＳｅｒｖｌｅｔ起動命令を解釈して適切なＳｅｒｖｌｅｔを実行する部分である。ビューワ選択Ｓｅｒｖｌｅｔ０３−０３はアクセスしてきたクライアント２００のデバイスに応じたビューワプログラムを保持部１３０から選択し、クライアント２００にダウンロードさせる部分である。
【００２９】
アプリケーションデーモン１２０内の処理部分として、アプリケーション起動部１２１、アプリケーション処理部１２２、ＧＵＩリモート中継ライブラリ１２３がある。アプリケーション起動部１２１は、クライアント２００上のビューワプログラム２１１と接続を持ち、当該ビューワプログラム２１１からのアプリケーション起動命令に応じてアプリケーションを起動する。
【００３０】
尚、本実施例ではメモリ消費量節約のため、１プロセス内で複数のアプリケーションを同時稼動させる例を取り上げる。このため、ここでいうアプリケーション起動とは、アプリケーション空間１１２Ａ，１１２Ｂを用意し、アプリケーション初期化処理を行うことを意味する。
【００３１】
アプリケーション処理部１２２は、システム毎にアプリケーション開発者が用意する部分であり、アプリケーションデーモン１２０内に組み込むためのフレームワークに従った実装がなされたものである。ＧＵＩリモート中継ライブラリ１２３は、アプリケーション処理部１２２にて発生するＧＵＩ関連の命令をクライアント２００上のビューワプログラム２１１に送る部分である。
【００３２】
ブラウザ２１０はクライアント２００で動作し、ユーザによる操作に応じて適宜Ｗｅｂサーバ１１０にアクセスを行う。ビューワプログラム２１１は、Ｗｅｂサーバ１１０からダウンロードされてブラウザ２１０内で動作するプログラムであり、アプリケーションデーモン１２０と通信接続を確立して動作する。また、機能としては、アプリケーション起動部１２１に対しアプリケーション起動要求を行う機能、ＧＵＩリモート中継ライブラリ１２３から送られてくる命令に応じて表示画面２００Ａを表示する機能、表示画面２００Ａに対するマウスなどを用いたユーザ操作イベントをＧＵＩリモート中継ライブラリ１２３経由でアプリケーション処理部１２２に送る機能等を持つ。
【００３３】
図４は、本システムにてクライアント２００をユーザが操作する場合のフローチャートである。
【００３４】
尚、Ｗｅｂサーバ１１０及びアプリケーションデーモン１２０はサーバ装置１００上で既に稼動しているものとする。尚、フローチャートにはアプリケーションを１つ起動して終了するまでのパターンを記載しているが、ビューワプログラムを動かしている限り、２つ目、３つ目のアプリケーションを起動することも可能である。
【００３５】
先ず、ユーザがクライアント２００上のブラウザ２１０を起動し、サーバ装置１００におけるＷｅｂサーバ１１０上の「アプリケーションサービスのページ」にアクセスする（ステップＳ１）。
【００３６】
次に、Ｗｅｂサーバ１１０内のＳｅｒｖｌｅｔ処理部１１１から、ビューワ選択Ｓｅｒｖｌｅｔが起動され、クライアント２００のデバイスに適したビューワプログラムが選ばれる。選ばれたビューワプログラムは、クライアント２００のブラウザ２１０にダウンロードされる。このビューワプログラムは、ブラウザ２１０内で起動後、アプリケーションデーモン１２０に接続する（ステップＳ２）。
【００３７】
次に、アプリケーションデーモン１２０からビューワプログラムにアプリケーション一覧が送られ、当該ビューワプログラム内にアプリケーションメニューが表示される（ステップＳ３）。
【００３８】
次に、ユーザは、実行したいアプリケーションをマウス等で選択・クリックする。この操作により、アプリケーションデーモン１２０へアプリケーション起動要求が送られる（ステップＳ４）。
【００３９】
次に、アプリケーションデーモン１２０内のアプリケーション起動部１２１にて、アプリケーション空間１２２Ａが新たに確保され、続いてアプリケーション処理部１２２に、アプリケーション初期化要求が発行される。これにより、アプリケーション処理が開始する（ステップＳ５）。
【００４０】
次に、アプリケーション処理部１２２にて、画面表示命令が発行され、ＧＵＩリモート中継ライブラリ１２３経由でビューワプログラムへ命令が中継される。ビューワプログラムは、当該命令に従い、画面表示を行う（ステップＳ６）。
【００４１】
次に、ステップＳ７にて、アプリケーション処理部１２２からＧＵＩ関連の命令の発行の検出待ちが行われ、発行されない場合は、ステップＳ８としてユーザによる画面操作の検出待ちが行われる。ここで、ユーザによる画面操作が行われると、ビューワプログラムが画面操作の内容を、ＧＵＩリモート中継ライブラリ１２３経由でアプリケーション処理部１２２に伝える（ステップＳ１０）。
【００４２】
一方、ステップＳ７にて、アプリケーション処理部１２２からＧＵＩ関連の命令の発行を検出すると、アプリケーションの終了命令のときは、終わりとなり、終わりでない場合は、ステップＳ１１に移行する。ステップＳ１１では、ビューワプログラムが画面操作内容をＧＵＩリモート中継ライブラリ１２３を経由してアプリケーション処理部１２２に伝え、終了に至る。
【００４３】
以上のように本実施形態では、複数種類のクライアント２００，３００からサーバ装置１００上のアプリケーションの遠隔操作が可能となり、ページベースのユーザインターフェースと比較して、表現力やレスポンスの高いユーザインターフェースを実現できる。
【００４４】
一方、ユーザはサーバ装置１００からダウンロードされるビューワプログラムを意識的に選択する必要はないため、ページベース記述言語を用いたシステムと同様に、デバイスを意識せずにアプリケーションサービスを受けることができる。
【００４５】
また、同時通信接続数が１つに限定されたクライアント２００又は３００を用いた場合でも、アプリケーション起動命令とアプリケーション処理命令を同一の通信経路で行う本構成であれば、問題無くアプリケーションサービスを受けることができる。
【００４６】
なお、上記においてサーバ装置１００の構成としてはＷｅｂサーバ１１０及び／又はアプリケーションデーモン１２０をハードウエアとして構成する他に、一又は複数のコンピュータ又はこれらコンピュータの一部の機能により構成することができる。
【００４７】
また図２のシーケンスが実施される方法又はプログラムを、当該コンピュータにより実行するソフトウエアとして構成とすることもできる。
【００４８】
【発明の効果】
以上述べたように本発明によれば、表現力やレスポンスの良いユーザインターフェースオブジェクトをネットワーク経由で操作することができるような、サーバクライアントシステム及びサーバ並びにサーバのアプリケーションをクライアントにて遠隔操作する方法及びプログラムを提供できるものである。
【図面の簡単な説明】
【図１】本発明の一実施形態に係るサーバクライアントシステムを示す図。
【図２】同実施形態におけるサーバ装置のアプリケーションをクライアントにて遠隔操作する方法を説明するフローチャート。
【図３】従来のサーバクライアントシステムの一例としてページ記述言語を用いたＷｅｂアプリケーションシステムを示す図。
【図４】従来のサーバクライアントシステムの他例としてＧＵＩリモート中継ライブラリを有するシステムを示す図。
【符号の説明】
１００…サーバ装置、１１０…Ｗｅｂサーバ、１１１…Ｓｅｒｖｌｅｔ処理部、１１２…ビューワ選択部、１２０…アプリケーションデーモン、１２１…アプリケーション起動部、１２２…アプリケーション処理部、１２３…ＧＵＩリモート中継ライブラリ、１３０…保持部、２００，３００……クライアント、２００Ａ，３００Ａ…表示画面、２１０，３１０…ブラウザ、２１１，３１１…ビューワプログラム。
【図１】
2005025463.tif 000003
【図２】
2005025463.tif 000004
【図３】
2005025463.tif 000005
【図４】
2005025463.tif 000006