(57)【特許請求の範囲】
【請求項１】
ネットワークを介して複数のサーバに接続される情報処理装置であって、
該情報処理装置で利用可能なアプリケーションが動作するサーバを記憶する記憶部と、
前記サーバで動作するアプリケーションをそれぞれ実行させるためのアイコン画像を表示する表示部と、
該記憶部に記憶された前記サーバから、前記アイコン画像を取得し、該取得した前記アイコン画像を前記表示部に表示する制御部とを有し、
該記憶部は、複数の前記サーバをグループ化して記憶し、
前記制御部は、前記記憶部に記憶した前記サーバに対して、前記アイコン画像を取得するための要求を送信し、該要求に対して応答があった前記サーバから前記アイコン画像を取得する制御を行い、
同一グループの複数の前記サーバから取得した前記アイコン画像のうち、最も速く取得した前記アイコン画像を前記表示部に表示すること、を特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
ユーザによる操作入力を受け付ける入力部を有し、
前記制御部は、
同一グループの前記サーバから取得した前記アイコン画像を前記表示部に表示する際に、同一グループの複数の前記サーバから取得した前記アイコン画像にタブを付けて前記表示部に表示し、最も速く取得した前記アイコン画像を前記表示部に表示するとともに、時間的に遅れて取得した前記アイコン画像のタブを、最も速く取得した前記アイコン画像のタブと並べて表示し、
前記時間的に遅れて取得した前記アイコン画像のタブが、前記入力部に対する操作入力により選択された場合、前記選択されたタブが付された前記アイコン画像を、前記最も速く取得した前記アイコン画像に代えて選択可能に表示する、ことを特徴とする情報処理装置。
【請求項３】
請求項１または２に記載の情報処理装置において、
前記制御部は、前記記憶部に記憶した前記サーバに対して前記要求を送信する際、前記記憶部に記憶した前記サーバから取得されるべき前記アイコン画像の表示領域を、グレーアウトして表示し、もしくは前記アイコン画像が選択不可であることを明示する表示を行い、
前記サーバから前記アイコン画像が取得できたときに、グレーアウトもしくは選択不可であること明示された表示領域に、取得した前記アイコン画像を表示することを特徴とする、情報処理装置。
【請求項４】
請求項１〜３のいずれか１の情報処理装置と、該情報処理装置が取得した前記アイコン画像に対する操作に応じて実行されたアプリケーションにより処理される画像データを画像形成する画像形成部と、を有する画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および画像形成装置に関し、より詳細には、ネットワークを介して複数のサーバに接続してサーアのアプリケーションを利用可能に構成される情報処理装置および画像形成装置に関する。
【背景技術】
【０００２】
制御プロセッサにより情報処理を行う情報処理装置には、Ｗｅｂブラウザを搭載し、Ｗｅｂアプリケーションを登録・実行できるものが知られている。また、情報処理装置として、複写機、プリンタ、イメージスキャナ、ファクシミリなどの複数の機能を有するデジタル複合機（MFP；（Multi Function Peripheral）があり、デジタル複合機にＷｅｂブラウザを搭載して、Ｗｅｂアプリケーションを登録・実行するものがある。
このような情報処理装置において、Ｗｅｂアプリケーションを動作させるサーバを複数用いて冗長化を行い、Ｗｅｂアプリケーションが提供するサービスの稼働率を向上させる方策がとられることがある。
この場合に、複数存在するサーバの中から、稼働しているもの１つを選択肢して、情報処理装置からサーバに接続する方法が必要になる。
【０００３】
例えば特許文献１には、複数のミラー・サーバ間でロード・バランスを取るための方法が開示されている。ここではユーザは、同一Ｗｅｂページ内で複数のミラー・サーバのうちいずれか１つを選択してアクセスすることができる。
この方法は、（１）Ｗｅｂページがクライアントによってアクセスされたとき、そのＷｅｂページだけでなく所定のスクリプトもクライアントに送信するステップ、（２）複数のミラー・サーバそれぞれと接続を確立し、それぞれの応答時間を測定するよう、クライアントでスクリプトを自動的に実行するステップ、及び（３）ユーザがアクセスできるよう、応答時間が最短のミラー・サーバを選択するステップを含む。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２５６２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数のサーバに情報処理装置が接続して、情報処理装置によってサーバのアプリケーションを利用するシステムにおいて、サーバの稼働状況を監視する機能と、ロードバランシングと呼ばれる技術とを組み合わせることにより、情報処理装置に対して、複数のサーバを１つのサーバであるかのように見せる技術がある。
この場合、アプリケーションが要求するトランザクション維持のための動作を適切に選択して設定する必要があり、その設定がアプリケーションと相性が合わないと動作不良になったり、設定が複雑になる、という課題が生じる。また。トランザクション管理や設定の機能が優れたロードバランシング装置は高価であるため、費用対効果から導入できない、という場合もある。
【０００６】
このため、情報処理装置に同じ機能のＷｅｂアプリケーションを複数登録し、利用者が複数のＷｅｂアプリケーションから、適切なＷｅｂアプリケーションを選択して起動する、という方法もとられている。この場合、登録した複数のＷｅｂアプリケーションは、それぞれ異なるサーバで動作する。
しかしながら、利用者が一つのＷｅｂアプリケーションを選択したにもかかわらず、その選択したＷｅｂアプリケーションが動作するサーバに障害が発生している場合、利用者が暫く待っても応答がなく、例えば所定時間後にタイムアウトとなったときにそのサーバが使用できないことがわかり、その時点で同じ機能を有する他のＷｅｂアプリケーションを選択する必要が生じる。また、このような問題が生じることを避けるためには、１台のサーバに障害が発生したときに、障害中のサーバを避けて使用するよう利用者全員に周知しなければならず、運用面と操作性の点で煩雑になるという課題がある。
【０００７】
また、情報処理装置の表示部に、Ｗｅｂアプリケーションを使用するためのメニューを表示させる場合、情報処理装置は、Ｗｅｂアプリケーションを起動するボタンを兼ねたアイコン画像を各Ｗｅｂアプリケーションから取得し、その表示部に表示することも行われている。
この場合、障害中や通信できないサーバのアイコン画像は正しく表示できない状態になるが、利用者は、正しく表示されていないアイコン画像を見たときに、情報処理装置自体の故障であるか、あるいはサーバとの通信ができない状態であるかが区別できなくなり、システムの利用自体を中断してしまう、という問題がある。
【０００８】
特許文献１には、Ｗｅｂページ内のスクリプトを用いて複数のミラー・サーバの応答時間を計測し、その計測結果に基づいて、応答時間が短いサーバを選択する方法が開示されている。しかしながら、この場合、ミラー・サーバの応答時間を計測する必要があり、応答しないミラー・サーバについては、タイムアウト時間を決めて無応答と判断している。また、特許文献１には、サーバから取得したアイコン画像を表示することについての言及はない。
【０００９】
本発明は、上述のごとき実情に鑑みてなされたものであり、複数のサーバに情報処理装置が接続して、サーバのアプリケーションを利用するシステムにおいて、応答時間の計測やタイムアウトを設定する必要なく、アプリケーションを利用するための画像を複数のサーバから単純な構成によって取得して表示させることで、利用者の利便性を向上させるようにした情報処理装置、及び該情報処理装置を備えた画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明の第１の技術手段は、ネットワークを介して複数のサーバに接続される情報処理装置であって、該情報処理装置で利用可能なアプリケーションが動作するサーバを記憶する記憶部と、前記サーバで動作するアプリケーションをそれぞれ実行させるためのアイコン画像を表示する表示部と、該記憶部に記憶された前記サーバから、前記アイコン画像を取得し、該取得した前記アイコン画像を前記表示部に表示する制御部とを有し、該記憶部は、複数の前記サーバをグループ化して記憶し、前記制御部は、前記記憶部に記憶したサーバに対して、前記アイコン画像を取得するための要求を送信し、該要求に対して応答があった前記サーバから前記アイコン画像を取得する制御を行い、同一グループの複数の前記サーバから取得した前記アイコン画像のうち、最も速く取得した前記アイコン画像を前記表示部に表示すること、を特徴としたものである。
【００１１】
第２の技術手段は、第１の技術手段において、ユーザによる操作入力を受け付ける入力部を有し、前記制御部は、同一グループの前記サーバから取得した前記アイコン画像を前記表示部に表示する際に、同一グループの複数の前記サーバから取得した前記アイコン画像にタブを付けて前記表示部に表示し、最も速く取得した前記アイコン画像を前記表示部に表示するとともに、時間的に遅れて取得した前記アイコン画像のタブを、最も速く取得した前記アイコン画像のタブと並べて表示し、前記時間的に遅れて取得した前記アイコン画像のタブが、前記入力部に対する操作入力により選択された場合、前記選択されたタブが付された前記アイコン画像を、前記最も速く取得した前記アイコン画像に代えて選択可能に表示する、ことを特徴としたものである。
【００１２】
第３の技術手段は、第１または第２の技術手段において、前記制御部は、前記記憶部に記憶した前記サーバに対して前記要求を送信する際、前記記憶部に記憶した前記サーバから取得されるべき前記アイコン画像の表示領域を、グレーアウトして表示し、もしくは前記アイコン画像が選択不可であることを明示する表示を行い、前記サーバから前記アイコン画像が取得できたときに、グレーアウトもしくは選択不可であること明示された表示領域に、取得した前記アイコン画像を表示することを特徴としたものである。
【００１３】
第４の技術手段は、第１〜第３のいずれか１の技術手段の情報処理装置と、該情報処理装置が取得した前記アイコン画像に対する操作に応じて実行されたアプリケーションにより処理される画像データを画像形成する画像形成部と、を有する画像形成装置である。
【発明の効果】
【００１４】
本発明によれば、複数のサーバに情報処理装置が接続して、サーバのアプリケーションを利用するシステムにおいて、応答時間の計測やタイムアウトを設定する必要なく、アプリケーションを利用するための画像を複数のサーバから単純な構成によって取得して表示させることで、利用者の利便性を向上させるようにした情報処理装置、及び該情報処理装置を備えた画像形成装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明による情報処理装置の一実施形態の構成例を示す図である。
【図２】本発明に係る情報処理装置を用いた情報処理システムの構成を概念的に示す図である。
【図３】画像形成装置１でＷｅｂブラウザが起動した直後に表示するメニュー画面の一例を示す図である。
【図４】メニュー画面を表示するための登録情報の例を示す図である。
【図５】本発明に係る実施形態の画像形成装置でＷｅｂブラウザが起動した直後に表示するメニュー画面の一例を示す図である。
【図６】図５のメニュー画面でメニューを表示するために登録される情報の一例を示す図である。
【図７】画像形成装置がサーバからの応答後に実行するJavaScript（登録商標）によりメニュー項目挿入をＤＯＭツリーに挿入する処理を示すフローチャートである。
【図８】画像形成装置でコールバック関数を実行することによるメニュー項目の表示処理例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
（実施形態１）
図１は、本発明による情報処理装置の一実施形態の構成例を示す図である。制御プロセッサにより情報処理を行う情報処理装置は、画像データを記録媒体に画像形成する画像形成部を備えた画像形成装置として構成することができる。画像形成装置は、コピー、プリンタ、イメージスキャナ、ファクシミリなどの複数の機能を有するデジタル複合機（MFP；（Multi Function Peripheral）や単独のプリンタとして構成することができる。本実施形態は、情報処理装置を画像形成装置１として構成したものである。
【００１７】
画像形成装置１は、操作部１１、画像読取部１２、画像形成部１３、通信処理部１４、記憶部１５、制御部１６を備える。
操作部１１は、タッチパネルなどのユーザインターフェースである。操作部１１は、入力部１１ａ、表示部１１ｂを備える。入力部１１ａは、ユーザによる操作入力を受け付ける入力キー、タッチパッドなどの入力デバイスである。なお、入力部１１ａは、マウスやペン入力装置、手書きパッド、ジェスチャーパッドなどのポインティングデバイス、操作ボタン、音声入力装置などであってもよい。表示部１１ｂは、各種情報を表示する液晶ディスプレイなどの表示デバイスである。
【００１８】
画像形成装置１は、外部に接続されるサーバで実行されるアプリケーションで情報処理を実行させることができる。このため、表示部１１ｂには、例えば、スキャンアプリ、出力アプリ、認証アプリなど、画像形成装置１で使用可能な複数のアプリケーションのアイコン画像が表示される。ユーザは、このアイコン画像により所望のアプリケーションを選択し、起動させることができる。
【００１９】
画像読取部１２は、原稿に印刷された文字や画像を所定の解像度で読み取るスキャニングデバイスである。この画像読取部１２は、スキャナと、原稿をスキャナの位置まで搬送する原稿搬送部とを備える。
画像形成部１３は、用紙などの記録媒体に対して、文字や写真、グラフィックスなどを含む画像を印刷する処理部である。画像形成部１３は、感光体ドラム、帯電装置、露光装置、現像装置、転写装置、定着装置、および用紙トレイなどを備える。例えば、画像形成部１３は、画像読取部１２が読み取った画像のデータを用いてその画像を記録媒体に印刷するコピー処理を行ったり、外部装置から取得した画像データを用いて印刷処理を行ったりする。
通信処理部１４は、ネットワーク２を介して、サーバなどの外部装置との間で通信を行う通信インタフェースである。例えば、通信処理部１４は、サーバとＨＴＴＰプロトコルを用いて通信を行う。
【００２０】
記憶部１５は、メモリやハードディスク装置などの記憶デバイスである。記憶部１５は、画像形成装置１で利用可能なアプリケーションが動作するサーバを登録するメモリないしＨＤＤ（Hard Disk Drive）等の記憶手段であり、複数のサーバをグループ化して記憶する。また記憶部１５には、表示部１１ｂにアプリケーションを選択可能なメニュー画面を表示させるための登録情報（メニュー項目、タブ名、サーバへのリンク情報、アイコン取得用スクリプト）等が記憶される。これら情報の具体的詳細は後述する。
【００２１】
制御部１６は、画像形成装置１の各部を制御するＣＰＵ（Central Processing Unit）や専用プロセッサなどの制御デバイスである。制御部１６は、記憶部１５に記憶された情報処理プログラムや制御プログラムを実行することにより、画像形成装置１の各種機能を実現する。
Ｗｅｂブラウザ部１６ａは、Ｗｅｂブラウザとして動作する処理部である。Ｗｅｂブラウザ部１６ａは、通信処理部１４を介し、外部接続されるサーバとの間で通信を行う。表示部１１ｂに表示されたアプリケーションを動作するためのアイコン画像が選択されると、Ｗｅｂブラウザによりサーバのアプリケーションにより処理された情報を取得し、その画面を表示部１１ｂに表示させる。
【００２２】
図２は、本発明に係る情報処理装置を用いた情報処理システムの構成を概念的に示す図である。情報処理装置は、上記の画像形成装置１として構成したものとする。画像形成装置１には、Ｗｅｂブラウザ部１６ａによりＷｅｂブラウザが実行可能に設定されている。この画像形成装置１は、通信ネットワーク２を介して第１サーバ３および第２サーバ４に接続している。画像形成装置１に接続するサーバ数は、２つに限られずそれ以上の複数個とすることができるが、ここでは説明のため、第１サーバ３と第２サーバ４の２つのサーバに接続するものとする。
【００２３】
第１サーバ３および第２サーバ４では、それぞれＷｅｂアプリケーションが動作する。これらサーバ４とサーバ５で動作するＷｅｂアプリケーションは、同じ機能を提供するものとされる。
ここでは、これらＷｅｂアプリケーションを「業務１用Ｗｅｂアプリケーション」とし、第１サーバ３を業務１用ＷｅｂアプリケーションサーバＡとし、第２サーバ４を業務１用ＷｅｂアプリケーションサーバＢとする。
各サーバ３、４のＷｅｂアプリケーションは、データベース（ＤＢ）６を有する情報処理装置にネットワーク５を介して接続し、データベース６のデータの読み書きを行って、同一のデータに基づいて同一の機能を提供する。
【００２４】
図３は、画像形成装置１でＷｅｂブラウザが起動した直後に表示するメニュー画面の一例を示す図である。図３の例は、本発明に係る実施形態と比較して説明するための従来のメニュー画面例を示している。
従来のメニュー画面２０には、複数のＷｅｂアプリケーションを選択するための複数のメニュー項目２１〜２６がアイコン（ＩＣＯＮ）により表示される。メニュー項目２１〜２６は、この例では「業務１Ａ」、「業務１Ｂ」、「業務２Ｃ」、「業務２Ｄ」、「業務３Ｅ」、「業務３Ｆ」などと記載されている。
【００２５】
メニュー画面２０に表示される各メニュー項目２１〜２６は、管理者が予め画像形成装置１に登録して記憶させたものであり、それぞれのメニュー項目２１〜２６は、Ｗｅｂアプリケーションが動作するサーバへのリンク情報とペアになって関連付けられている。
例えばメニュー項目２１は、業務１用Ｗｅｂアプリケーションが動作する第１サーバ３とペアになっていて、その下側に表示されているメニュー項目２２は、業務１用Ｗｅｂアプリケーションが動作する第２サーバ４とペアになっている。
【００２６】
ここで利用者が、表示画面上でメニュー項目２１にタッチする操作を行うと、画像形成装置１のＷｅｂブラウザ部１６ａは、リンク情報で指定された「業務１用ＷｅｂアプリケーションサーバＡ」である第１サーバ３内のページを表示しようとする。
また、ユーザがメニュー項目２２にタッチすると、Ｗｅｂブラウザ部１６ａはリンク情報で指定された「業務１用ＷｅｂアプリケーションサーバＢ」である第２サーバ４内のページを表示しようとする。
【００２７】
図４は、上記のメニュー画面を表示するための登録情報の例を示す図である。画像形成装置１では、登録情報として、メニュー項目と、そのリンク情報、およびアイコン情報とが関連付けられて登録される。
そして画像形成装置１は、メニュー項目に登録した情報を、Ｗｅｂブラウザによるメニュー画面に表示する。ユーザが任意のメニュー項目にタッチする操作を行うと、リンク情報として登録されたＵＲＬに基づき、Ｗｅｂアプリケーションにアクセスする。ここでは、登録情報のアイコン情報として、画像データの所在を示すＵＲＬを設定しておくことで、グラフィカルなアイコンの画像をボタンとして表示することができる。
【００２８】
上記のシステムでは、業務１用Ｗｅｂアプリケーションを動作させるために、第１サーバ３と第２サーバ４とを冗長に動作させている。ここで画像形成装置１は、第１サーバ３が障害等により利用不可能な場合であっても、第２サーバ４により業務１Ｗｅｂアプリケーションが利用可能になるが、この場合には、利用者は、メニュー項目２１ではなく、メニュー項目２２を操作しなければならない。
このため、第１サーバ３に障害がある場合には、アナウンス等の手段を用いて、メニュー項目２１を使わずにメニュー項目２２を用いるようユーザに周知徹底する必要がある。
【００２９】
また、例えばアイコン情報が登録されている第１サーバ３に障害がある場合、画像形成装置１は、第１サーバ３からアイコン情報を取得することができないため、メニュー項目２１のアイコンが表示されないか、画像的に壊れたアイコンが表示される。この場合、アイコンが正しく表示されていないことを以って、第１サーバ３が障害中であると推測できる利用者もいるかもしれないが、メニューそのものが壊れているのではないか、と利用者が考える場合もある。
【００３０】
図５は、本発明に係る実施形態の画像形成装置でＷｅｂブラウザが起動した直後に表示するメニュー画面の一例を示す図である。本実施形態のメニュー画面３０は、同じＷｅｂアプリケーションの機能を提供する複数のサーバをグループ化し、グループごとに一つのメニュー項目を設定する。ここでは、３つのメニュー項目３１，３２，３３が設定される。この例ではメニュー項目３１のラベルは「業務１」、メニュー項目３２のラベルには「業務２」、メニュー項目３３のタベルには「業務３」が設定される。
【００３１】
そしてメニュー項目３１，３２，３３のそれぞれに対して、複数のリンク情報のそれぞれに関連付けられている複数のアイコン画像を用意する。アイコン画像は、タブ付きのボタンであり、これらのボタンを重ねて表示する。例えばメニュー項目３１では、二つのタブ付ボタンが重ねられる。各タブ付きボタンには、タブが設けられていて、各タブ付きボタンが重ねられた情報で、それぞれのタブが表示されるようになっている。メニュー項目３１では、タブ「Ａ」３１１とタブ「Ｂ」３１２とが画面表示される。他のメニュー項目３２，３３においても同様とされる。
ここでは各メニュー項目３１，３２，３３でボタンが重ねられた状態では、最上層に位置するボタンのみが画面表示され、その下層に重ねられたボタンは、そのタブのみが画面表示される。つまり重ねられたタブ付のボタンは、それぞれタブが並べて表示される。そしてそれぞれのタブに対して、サーバに接続するためのリンク情報と、アイコンを取得するためのアイコン取得用スクリプトとを関連付けておく。
【００３２】
ユーザは、各メニュー項目３１，３２，３３で表示されている最上層のボタンの機能を実行する操作（例えばタッチ操作、ダブルクリック操作等）を行うことができる。また、下層に重ねられているボタンを選択したい場合には、そのタブを選択する操作を行うことによって、操作したタブが付いているボタンを最上層に表示させることができる。最上層に表示されるボタンには、そのボタンのタブに関連付けられているアイコン取得用スクリプトによってサーバから取得されたアイコン画像が表示される。つまり下層に重ねられたボタンのタブが選択された場合、選択されたタブが付されたボタンを、最上層で表示されたボタンに代えて選択可能に表示する。「タブ」の概念はＧＵＩ（Graphical User Interface）において一般的になっているため、利用者が操作方法を容易に理解できることが期待できる。
【００３３】
ここでは、各メニュー項目３１、３２、３３の最上層に表示されているボタンの機能をユーザが実行する操作を行うことで、画像形成装置１にてアイコン取得用スクリプトが動作し、その動作を契機として、メニュー項目をＨＴＭＬのＤＯＭ（Document Object Model）ツリーに挿入するという方式によりメニュー画面を表示し、そのスクリプト内で各アプリケーションのアイコン画像も表示させる。
【００３４】
これにより、通信障害等の理由で画像形成装置１に応答しないサーバについては、画像形成装置１は、そのサーバからメニュー項目のアイコン画像を取得することができないため、メニュー項目のタブ自体が表示されない。従って、従来例のように画像的に壊れたアイコン画像が表示されることは無く、利用できないタブをユーザが選択することもない。
【００３５】
また、各メニュー項目３１，３２，３３のボタンの重なりは、画像形成装置１がサーバからそのボタンのアイコン画像を取得できた順に上側（前面側）から下側（後方側）に重なるようにすることができる。これにより、反応の遅いサーバについては、メニュー項目に対して、後から遅れてタブが追加される動作となる。
【００３６】
図６は、図５のメニュー画面でメニューを表示するために登録される情報の一例を示す図である。図６（Ａ）は、同じ機能を提供するサーバをグループ化して、そのグループごとにタイトルを付して登録した状態を示している。この例では、「業務１」、「業務２」、「業務３」の３つのグループが登録され、これら３種類のグループの業務に係る機能がサーバのＷｅｂアプリケーションにより提供される。
【００３７】
図６（Ｂ）はメニュー画面を表示するための登録情報の一例を示す図である。画像形成装置１では、利用する個々のＷｅｂアプリケーションサーバごとに、そのＷｅｂアプリケーションサーバが提供する機能ごとにグループ化されたメニュー項目番号と、そのメニュー項目番号に対応するメニュー項目内に表示させるボタンのタブ名と、そのＷｅｂアプリケーションサーバヘのリンク情報（ここではＵＲＬ）と、メニュー項目にタブ付ボタンをアイコンとして表示するためのアイコン画像を取得するためのアイコン取得用スクリプトとを関連付けて記憶する。
【００３８】
例えば、「業務１」に係る機能は、ＷｅｂアプリケーションサーバＡと、ＷｅｂアプリケーションサーバＢにより提供される。そこでこれらＷｅｂアプリケーションサーバＡと、ＷｅｂアプリケーションサーバＢとをグループ化して、同一のメニュー項目（メニュー項目１）に分類し、各サーバに接続するためのタブをそれぞれタブ「Ａ」、およびタブ「Ｂ」とする。そしてこれらのタブ毎に、メニュー項目Ｎｏ．と、タブ名と、Ｗｅｂアプリケーションサーバへのリンク情報と、アイコン取得用スクリプトとを関連付けて登録する。「業務２」、「業務３」についても同様となる。
【００３９】
ここでは、メニュー項目に表示させるアイコン画像を取得するためのＵＲＬを直接登録するのではなく、アイコン取得用スクリプトを登録する。アイコン取得用スクリプトには、Ｗｅｂアプリケーションサーバから画像形成装置１に対して、所定のスクリプトを返すためのＵＲＬが登録されている。この所定のスクリプトは、アイコン画像を取得するための情報をパラメータとして渡すように記述されたものである。
【００４０】
図７は、画像形成装置がサーバからの応答後に実行するJavaScript（登録商標）によりメニュー項目をＤＯＭツリーに挿入する処理を示すフローチャートである。
本例では、ＪＳＯＮＰ（JSON（Java Script Object Notation）with adding）によりクロスドメイン通信を可能とし、複数のサーバからメニュー項目のアイコン画像を取得して表示できるようにする。ブラウザなどに実装されている同一生成元ポリシーの制約により、Ｗｅｂページは通常、自分を生成したドメイン以外のドメインのサーバと通信することができないが、ＪＳＯＮＰを用いることにより別ドメインのサーバからのデータの取得を可能とする。
【００４１】
ＪＳＯＮＰでは、サーバは、ブラウザからの要求（リクエスト）のレスポンスとして、コールバック関数名とデータ取得のためのリンク情報（ＵＲＬ）をＪＳＯＮ形式で表記して引数とした形式でレスポンスを行う。画像形成装置１では、サーバからレスポンスされるコールバック関数と同じ名前の関数を定義しておき、レスポンスをブラウザにより解釈・実行することで、データの受信完了の検知と、コールバック処理が可能となる。ここでは動的にＤＯＭツリーを生成することで、非同期でサーバからデータ（ここではメニュー項目のアイコン画像データ）を取得することができる。
【００４２】
図７において、画像形成装置１は、ＨＴＭＬページのオンロードを契機に処理を開始する。例えば画像形成装置１は、ホーム画面などと呼ばれる初期画面から所定の操作に応じてＷｅｂアプリケーションを選択するためのメニュー画面に移行する。メニュー画面に移行すると、Ｗｅｂブラウザが起動し、メニュー表示用のスクリプトをサーバにリクエストする。画像形成装置１では、サーバからのレスポンスとしてスクリプトが返ってくると、そのスクリプトに決められたコールバック関数を呼び出して実行し、メニュー画面に表示するメニュー項目のアイコン画像の所在を示すＵＲＬを取得し、そのＵＲＬに基づきサーバからアイコン画像を取得して、メニュー表示する。
【００４３】
この処理では、まず画像形成装置１では、変数ｚの初期値として十分に大きな値を設定する。この値は、例えば図６（Ｂ）の登録情報項目数より大きな値であればよい（ステップＳ１）。
そして変数ｉ＝１とおき、グループ化されたメニュー項目を順に処理する。ここでは図６（Ａ）に登録されたメニュー項目を順に処理していく（ステップＳ２）。この処理時点では、図６（Ａ）及び図６（Ｂ）の登録情報は、JavaScriptの変数情報などの形式でＨＴＭＬページに埋め込まれていることが前提である。
【００４４】
そしてｉ番目のメニュー項目がなければ、処理を終了し、メニュー項目があればステップＳ４に進んで処理を行う（ステップＳ３）。
ステップＳ４では、図５のメニュー画面のｉ番目のメニュー項目の枠を表示するためのＨＴＭＬ要素（例えば<div>）をＨＴＭＬページのＤＯＭツリーに挿入する。この枠はタブ３１１，３１２の範囲も含む矩形とする。
そして図５のメニュー画面のｉ番目のメニュー項目のラベル（「業務１〜業務３」を表示するためのＨＴＭＬ要素（例えば<label>）をＨＴＭＬページのＤＯＭツリーに挿入する（ステップＳ５）。ラベルは、各枠の下に表示するように配置する。<label>要素に指定する文字列は、図６（Ａ）のｉ番目の「メニュー項目」を使う。
【００４５】
そして変数 ｍ =１とし、 図６（Ｂ）の登録情報に登録されたＮｏ.＝ｉのメニュー項目を順に処理する（ステップＳ６）。
そしてＮｏ.ｉのｍ番目のメニュー項目がなければステップＳ１に戻り、Ｎｏ.＝ｉのｍ番目のメニュー項目があればステップＳ８に進む（ステップＳ７）。
ステップＳ８では、図６（Ｂ）の登録情報に登録されたＮｏ. ＝ｉのｍ番目のメニュー項目のアイコン取得用スクリプトの文字列をＵＲＬとしたＪＳＯＮＰの呼び出しをＨＴＭＬページのＤＯＭツリーに追加する。
ＪＳＯＮＰの呼び出しとは、<script src=URL>をＨＴＭＬページに追加することにより当該ＵＲＬからJavaScriptコードがロードされるようにすることであり、ロードされたJavaScriptコードは、そのＨＴＭＬページ内のコールバック関数を呼び出す。
【００４６】
図８は、画像形成装置でコールバック関数を実行することによるメニュー項目の表示処理例を示すフローチャートである。
画像形成装置１では、ＨＴＭＬページ内のコールバック関数は、各サーバから取得したJavaScriptコードが実行される際に呼び出される。従って、応答の無いサーバについてはコールバック関数が呼び出されることが無く、応答の早いサーバから先に呼び出される（ステップＳ１１）。
【００４７】
そして画像形成装置１では、コールバック関数の引数を用いてメニュー画面を表示するための情報を取得する（ステップＳ１２）
コールバック関数の引数には以下の情報が与えられているものとする。
（１）図６（Ｂ）の登録情報における「Ｎｏ．」の情報
（２）アイコン画像取得のためのＵＲＬ
そして（１）の情報を用いて、図５（Ｂ）の登録情報から以下の情報を得ておく。
（１）ｉ = メニュー項目番号
（２）ｍ = メニュー項目内での順番
（３）タブ名
（４）リンク情報
【００４８】
次に、既にＨＴＭＬのＤＯＭツリーに追加されているメニュー項目ｉの枠を表示するためのＨＴＭＬ要素（例えば<div>）に対して、子要素として以下を追加する（ステップＳ１３）。
（１）ｉ番目のタブの形をした枠を持ったブロック要素（例えば<div>）を絶対値で場所を指定して追加する。これにより、同じメニュー項目のものは重なって表示される。
（２）ブロック要素のタブ部分に「タブ名」をもったラベル要素を貼る。
（３）ブロック要素のスタイルのz-indexに、変数zの値をセットする。そして変数zを１だけデクリメントする。これにより、当該メニュー項目で最初に登録したものが最前面に表示される。
（４）ブロック要素のスタイルのbackground-imageに、アイコン画像取得のためのＵＲＬをセットする。
（５）ブロック要素がクリックされた際に「リンク情報」で指定されたページに遷移するよう登録する。例えばonclick属性に[ location = 'URL';]を実行するJavaSctiptコードを登録する。これにより、メニューをクリックした際に、登録されたＵＲＬに画面遷移する。
【００４９】
上記の処理により、画像形成装置１０が、ＪＳＯＮＰリクエストを登録されたサーバに発行し、サーバから返信されたスクリプトを実行すると、そのサーバで動作するアプリケーションのメニュー表示用のアイコン画像を取得することができる。
画像形成装置１からＪＳＯＮＰリクエストを一斉に発行した後は、サーバからそのメニュー項目のアイコン画像を取得できた順に上側（前面側）から下側（後方側）に重なるようにすることができる。これにより、ＪＳＯＮＰリクエストに対して反応のないサーバについてはアイコン画像が表示されず、反応の遅いサーバについては、メニュー項目に対して、後から遅れてタブが追加される。
【００５０】
上記にように本発明に係る実施形態では、複数のアイコンをグループにして登録しておくことを可能にし、同一グループのアイコンを重ねて表示し、このときの表示順序を、アイコン画像が取得できた時間の短いものを上にする。これにより、障害中や動作の遅いサーバのアイコンが像は下に隠れることになる。利用者は最も上に見えているアイコンボタンを操作することにより、迷うことなく稼働中のサーバを選択することができる。
また、サービスによっては冗長化した複数のサーバが全く同じ機能を提供しない場合があり、利用者が好みのサーバを使用したいこともある。例えば、利用者が部門毎のサーバを日常的に使用しているとき、バックアップ用に全社用のサーバを用いるといった場合がある。全社用のサーバでは、自部門を明示的に選択する必要があるため、操作手順が増える。このような場合に対処するために、重ねたアイコンを「タブ付き」で表示し、「タブ」を操作することにより下に隠れた自部門用のアイコンボタンを明示的に見える状態にして積極的に自部門用のサーバを起動することも可能にできる。
【００５１】
本実施形態に係る処理により、応答時間の計測も必要とせず、応答しないサーバへのタイムアウトも必要とすることなく、単純な構造にも関わらず実用的なメニューを提供できる。メニュー画面には、使用できるサーバに対応するものから順に表示されるため、反応が速いサーバについてはすぐに選択できる状態になり、利用者が待たされることを最小にすることができる。
【００５２】
（実施形態２）
上記実施形態１では、情報処理装置の一実施形態である画像形成装置１０は、サーバからメニュー表示用のアイコン画像を取得できた順にそのアイコン画像を表示させている。つまり、サーバからアイコン画像が取得できない場合は、そのサーバに関しては何らの情報も表示されない。これに対して本実施形態では、画像形成装置１０がメニュー表示画面に移行して、登録されているサーバにＪＳＯＮＰリクエストを送信するときに、グループ化された各メニュー項目ごとに、アイコン画像を表示すべき表示領域にグレーアウトしたアイコンを表示し、アイコン画像が取得できた順に、その取得したアイコン画像を表示させるようにする。また、各メニュー項目ごとにアイコン画像をグレーアウトさせるだけでなく、例えばアイコン画像の表示領域に×印を表示して選択不可であることを明示する、などの表示処理を行ってもよい。
【００５３】
これにより、ユーザは、初期状態でアイコンがグレーアウトされ、あるいは選択不可であることが明示されていることにより、まだ選択可能なアイコンがないことを把握することでき、その後取得できたアイコン画像が上から重ねられて表示されるため、単純な構造で利便性の高いメニュー非表示が可能となる。
【００５４】
（実施形態３）
上記実施形態では、情報処理装置は、Ｗｅｂブラウザを使用して、Ｗｅｂアプリケーションサーバからメニュー項目のアイコン画像を取得し、表示させるものとしている。
本発明に係る情報処理装置および画像形成装置は、Ｗｅｂブラウザを用いてサーバからアイコン画像を取得する構成に限定されない。
すなわち、情報処理装置は、情報処理装置で利用可能なアプリケーションが動作する複数のサーバに通信可能に接続される。そして情報処理装置とサーバとで、サーバのアプリケーションを利用するためのソフトウェアを保持し、コマンドをやりとりして、情報処理装置がサーバからメニュー項目のアイコン画像を取得して表示できるようにする。この場合、情報処理装置とサーバとの通信が確立し、サーバから情報処理装置にアイコン画像が取得できた順に、グループごとにアイコン画像を重ねて表示させる。表示されたアイコン画像をユーザが選択することにより、そのアイコン画像を取得したサーバのアプリケーションを利用可能とする。
【００５５】
これにより、通信障害等により情報処理装置と通信ができないサーバについては、アイコン画像が表示されず、反応の遅いサーバについては、メニュー項目に対して、後から遅れてタブが追加されて表示され、応答時間の計測も必要とせず、応答しないサーバへのタイムアウトも必要とすることなく、単純な構造にも関わらず実用的なメニューを提供できる。
【００５６】
上記の各実施形態で記載されている技術的特徴（構成要件）は、お互いに組み合わせ可能であり、組み合わせることにより、新しい技術的特徴を形成することができる。
【符号の説明】
【００５７】
１…画像形成装置、２…通信ネットワーク、３…第１サーバ、４…第２サーバ、５…ネットワーク、６…データベース、１０…画像形成装置、１１…操作部、１１ｂ…表示部、１１ａ…入力部、１２…画像読取部、１３…画像形成部、１４…通信処理部、１５…記憶部、１６…制御部、１６ａ…Ｗｅｂブラウザ部、２０…メニュー画面、２１，２２，２３，２４，２５，２６…メニュー項目、３０…メニュー画面、３１，３２，３３…メニュー項目、３１１…タブ。
【図１】
0006399521.tif 000002
【図２】
0006399521.tif 000003
【図３】
0006399521.tif 000004
【図４】
0006399521.tif 000005
【図５】
0006399521.tif 000006
【図６】
0006399521.tif 000007
【図７】
0006399521.tif 000008
【図８】
0006399521.tif 000009