(57)【要約】【課題】  Ｗｅｂブラウザに表示された画面に対する、ユーザによる情報入力の手間を軽減するとともに、Ｗｅｂアプリケーションとは別のドメインの、ユーザによる情報入力の手間を軽減する対象となるページをＷｅｂアプリケーションが指定可能にする。【解決手段】  情報処理装置は、Ｗｅｂサーバに画面情報を取得要求し、取得した画面情報をロードし、取得要求の応答に含まれる情報を用いて前記認証Ｗｅｂサーバへリダイレクトを行うＷｅｂブラウザと、Ｗｅｂブラウザが表示している画面のＵＲＬと取得要求の応答に含まれるＵＲＬが一致するかを判定し、Ｗｅｂブラウザが表示している画面のＵＲＬと取得要求の応答に含まれるＵＲＬが一致すると判定され、かつ、情報処理装置を現在使用しているユーザがオートコンプリート機能を許可されているユーザである場合に、Ｗｅｂブラウザに対して、第１のスクリプトをロードして実行するように指示する監視部を有する。【選択図】  図９
2017049966.tif 000002
【特許請求の範囲】
【請求項１】
画面情報を提供するＷｅｂサーバ及び認証Ｗｅｂサーバと、特定の画面情報に含まれるフォームの種類毎に入力すべき値を含むフォームデータを定義したテーブルを有する管理サーバと、通信可能な情報処理装置であって、
前記Ｗｅｂサーバに前記画面情報を取得要求し、取得した画面情報をロードし、前記取得要求の応答に含まれる情報を用いて前記認証Ｗｅｂサーバへリダイレクトを行うＷｅｂブラウザと、
前記Ｗｅｂブラウザが表示している画面のＵＲＬと前記取得要求の応答に含まれるＵＲＬが一致するかを判定し、前記Ｗｅｂブラウザが表示している画面のＵＲＬと前記取得要求の応答に含まれるＵＲＬが一致すると判定され、かつ、前記情報処理装置を現在使用しているユーザがオートコンプリート機能を許可されているユーザである場合に、前記Ｗｅｂブラウザに対して、第１のスクリプトをロードして実行するように指示する監視手段とを有し、
前記第１のスクリプトを実行することによって、前記情報処理装置を現在使用しているユーザ及び前記画面情報に従ったフォームデータを前記管理サーバから取得し、前記画面情報及び前記フォームデータの前記入力すべき値を反映した画面を表示部に表示することを特徴とする情報処理装置。
【請求項２】
前記取得要求の応答は、第２のスクリプトを含み、
前記Ｗｅｂブラウザは、第２のスクリプトを実行することによって、前記画面情報のロードが完了したことを前記監視手段に通知することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記監視手段は、さらに、前記Ｗｅｂブラウザによる画面情報のロードが完了したか否かを監視することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記Ｗｅｂブラウザは、
前記オートコンプリート機能を実行したフォームにユーザが新たなに情報を入力すると、対応するフォームデータの更新を前記管理サーバへ指示することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記第１のスクリプトは、前記監視手段が予め保持していることを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記画面情報は、ユーザ認証のための情報入力を行う画面であり、
前記オートコンプリート機能の対象となるフォームは、ユーザ名を入力するフォーム、及びパスワードを入力するフォームの少なくとも１つであることを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
さらに、画像形成手段を有することを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
画面情報を提供するＷｅｂサーバ及び認証Ｗｅｂサーバと、特定の画面情報に含まれるフォームの種類毎に入力すべき値を含むフォームデータを定義したテーブルを有する管理サーバと、通信可能な情報処理装置の制御方法であって、
Ｗｅｂブラウザが、前記Ｗｅｂサーバに前記画面情報を取得要求し、取得した画面情報をロードし、前記取得要求の応答に含まれる情報を用いて前記認証Ｗｅｂサーバへリダイレクトを行う工程と、
監視手段が、前記Ｗｅｂブラウザが表示している画面のＵＲＬと前記取得要求の応答に含まれるＵＲＬが一致するかを判定し、前記Ｗｅｂブラウザが表示している画面のＵＲＬと前記取得要求の応答に含まれるＵＲＬが一致すると判定され、かつ、前記情報処理装置を現在使用しているユーザがオートコンプリート機能を許可されているユーザである場合に、前記Ｗｅｂブラウザに対して、第１のスクリプトをロードして実行するように指示する工程と、
前記第１のスクリプトを実行することによって、前記情報処理装置を現在使用しているユーザ及び前記画面情報に従ったフォームデータを前記管理サーバから取得し、前記画面情報及び前記フォームデータの前記入力すべき値を反映した画面を表示部に表示する工程を有することを特徴とする情報処理装置の制御方法。
【請求項９】
請求項１乃至７の何れか１項に記載の情報処理装置としてコンピュータを機能させるための該コンピュータで読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂサーバから画面データを受信し、当該画面データに基づいて画面を表示するＷｅｂブラウザを備える情報処理装置、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
ＰＣなどの情報処理装置がＷｅｂブラウザを備え、ネットワーク上のＷｅｂサーバにより提供される画面データ（例えば、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）データ）に基づいて画面を表示することが知られている。情報処理装置のＷｅｂブラウザに表示される画面には、Ｗｅｂサーバが有するＷｅｂアプリケーションを操作するための操作画面が含まれる。
【０００３】
既存のＷｅｂアプリケーションには、Ｗｅｂアプリケーションを使用するユーザを認証する機能を有するものがある。そのようなＷｅｂアプリケーションを使用する場合は、最初に、ユーザ情報を入力するためのフォームを含むＨＴＭＬデータがＷｅｂアプリケーションからＷｅｂブラウザに提供される。Ｗｅｂブラウザは、受信したＨＴＭＬデータに基づく画面を表示する。ユーザが表示された画面を介してユーザ名やパスワード等のユーザ情報を入力すると、Ｗｅｂブラウザは、Ｗｅｂアプリケーションにフォーム内容（入力済みのユーザ情報）を送信し、Ｗｅｂアプリケーション側でユーザ認証が行われる。
【０００４】
Ｗｅｂアプリケーションによるユーザ認証のために、Ｗｅｂブラウザに表示される画面にユーザ情報を入力する場合、ユーザは、Ｗｅｂアプリケーションを使用する毎に繰り返しユーザ情報を入力しなければならない。これに対して、ユーザが一度入力したユーザ情報を、ユーザ毎に区別してＷｅｂブラウザ内に保持しておき、Ｗｅｂブラウザで画面を表示する際に、保持しておいたユーザ情報を画面内に自動的に設定すること（オートコンプリート）が知られている。
【０００５】
特許文献１は、ユーザ情報を入力する画面情報に第１スクリプトを含めておき、Ｗｅｂブラウザ上で第１スクリプトを実行し、それを契機にして、ユーザが一度入力したユーザ情報を画面内に自動的に設定するための第２スクリプトを実行している。これにより、Ｗｅｂブラウザに表示された画面に対する、ユーザによる情報入力の手間を軽減するとともに、ユーザによる情報入力の手間を軽減する対象となるページをＷｅｂアプリケーションが指定することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１５−１２５６２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１では、オートコンプリート対象とするアプリケーションの画面情報に、予めスクリプトを含めておく必要がある。したがって、Ｗｅｂアプリケーションとは別ドメイン、かつ他のアプリケーションとの共用の画面に対してユーザ情報を入力するケースでは、画面にスクリプトを含めることができないため、オートコンプリートができないという課題がある。
【０００８】
本発明は、Ｗｅｂブラウザに表示された画面に対する、ユーザによる情報入力の手間を軽減する対象となる、Ｗｅｂアプリケーションとは別ドメインのページを、Ｗｅｂアプリケーションが指定可能にする仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、画面情報を提供するＷｅｂサーバ及び認証Ｗｅｂサーバと、特定の画面情報に含まれるフォームの種類毎に入力すべき値を含むフォームデータを定義したテーブルを有する管理サーバと、通信可能な情報処理装置であって、前記Ｗｅｂサーバに前記画面情報を取得要求し、取得した画面情報をロードし、前記取得要求の応答に含まれる情報を用いて前記認証Ｗｅｂサーバへリダイレクトを行うＷｅｂブラウザと、前記Ｗｅｂブラウザが表示している画面のＵＲＬと前記取得要求の応答に含まれるＵＲＬが一致するかを判定し、前記Ｗｅｂブラウザが表示している画面のＵＲＬと前記取得要求の応答に含まれるＵＲＬが一致すると判定され、かつ、前記情報処理装置を現在使用しているユーザがオートコンプリート機能を許可されているユーザである場合に、前記Ｗｅｂブラウザに対して、第１のスクリプトをロードして実行するように指示する監視手段とを有し、前記第１のスクリプトを実行することによって、前記情報処理装置を現在使用しているユーザ及び前記画面情報に従ったフォームデータを前記管理サーバから取得し、前記画面情報及び前記フォームデータの前記入力すべき値を反映した画面を表示部に表示することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、Ｗｅｂブラウザに表示された画面に対する、ユーザによる情報入力の手間を軽減する対象となる、Ｗｅｂアプリケーションとは別ドメインのページを、Ｗｅｂアプリケーションが指定することができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態に係る情報処理システムの全体図。
【図２】第１の実施形態に係るＭＦＰ１０１の構成を示すブロック図。
【図３】第１の実施形態に係るＷｅｂサーバ１０２の構成を示すブロック図。
【図４】第１の実施形態に係るＭＦＰ１０１のソフトウェア構成を示す図。
【図５】第１の実施形態に係るＷｅｂブラウザ４０４によりＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプトの一例を示す図。
【図６】第１の実施形態に係るフォームデータ管理サーバ１０３のソフトウェア構成を示す図。
【図７】第１の実施形態に係るフォームデータ管理テーブルを示す図。
【図８】第１の実施形態に係るＷｅｂサーバ１０２および認証Ｗｅｂサーバ１０４のソフトウェア構成を示す図。
【図９】第１の実施形態に係るＷｅｂブラウザ監視部４０７の動作を説明するフローチャート。
【図１０】第１の実施形態に係る情報処理システム全体の動作を説明するシーケンス図。
【図１１】第１の実施形態に係るＭＦＰ１０１の画面を示す図。
【図１２】第１の実施形態に係るＷｅｂアプリケーション８１０が応答するＨＴＭＬデータの一例を示す図。
【図１３】第１の実施形態に係る認証Ｗｅｂアプリケーション８１４が応答するＨＴＭＬデータの一例を示す図。
【図１４】第１の実施形態に係るＭＦＰ１０１の画面を示す図。
【図１５】第１の実施形態に係るＷｅｂブラウザ監視部４０７がＷｅｂブラウザ４０４に対してロードを指示するスクリプトの一例を示す図。
【図１６】第１の実施形態に係るスクリプト応答部６１４が応答するスクリプトの一例を示す図。
【図１７】第１の実施形態に係るフォームデータ保存処理のシーケンスを示す図。
【図１８】第２の実施形態に係るＷｅｂブラウザ監視部４０７の動作を説明するフローチャート。
【図１９】第２の実施形態に係る情報処理システム全体の動作を説明するシーケンス図。
【図２０】第２の実施形態に係るＷｅｂブラウザ４０４によりＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプトの一例を示す図。
【図２１】第２の実施形態に係るＷｅｂアプリケーション８１０が応答するＨＴＭＬデータの一例を示す図。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１３】
＜第１の実施形態＞
＜情報処理システム＞
まず、図１を参照して、本実施形態における情報処理システムの構成例について説明する。情報処理システム１００には、情報処理装置の一例であるＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０１、Ｗｅｂサーバ１０２、認証Ｗｅｂサーバ１０４及び外部装置の一例であるフォームデータ管理サーバ１０３が含まれる。情報処理システム１００に含まれるＭＦＰ１０１、Ｗｅｂサーバ１０２、認証Ｗｅｂサーバ１０４及びフォームデータ管理サーバ１０３は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１１０を介して互いに通信可能に接続される。なお、前述した装置以外の装置がＬＡＮ１１０上（ネットワーク上）に接続され、情報処理システム１００の一部を構成していてもよい。また、フォームデータ管理サーバの機能は、ＭＦＰ１０１に組み込まれてもよい。Ｗｅｂサーバ１０２と認証Ｗｅｂサーバ１０４はドメインが異なる。
【００１４】
＜情報処理装置の構成＞
次に、図２を参照して、情報処理装置であるＭＦＰ１０１の構成例について説明する。ＭＦＰ１０１は、制御部２１０、操作部２１９、プリンタ２１０、及びスキャナ２２１を備える。制御部２１０は、ＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３、ＨＤＤ２１４、操作部Ｉ／Ｆ２１５、プリンタＩ／Ｆ２１６、スキャナＩ／Ｆ２１７、及びネットワークＩ／Ｆ２１８を備える。
【００１５】
ＣＰＵ２１１は、ＭＦＰ１０１全体の動作を制御する。ＣＰＵ２１１は、ＲＯＭ２１２に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。これにより、ＭＦＰ１０１は、コピー／スキャン（送信）／プリント等の各種サービスを提供することができる。ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２１４は、画像データや各種プログラムを記憶する。
【００１６】
操作部Ｉ／Ｆ２１５は、操作部２１９と制御部２１０を接続する。操作部２１９には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。プリンタＩ／Ｆ２１６は、プリンタ２１０と制御部２１０を接続する。プリンタ２１０で印刷すべき画像データはプリンタＩ／Ｆ２１６を介して制御部２１０から転送され、プリンタ２１０において記録媒体上に印刷される。スキャナＩ／Ｆ２１７は、スキャナ２２１と制御部２１０を接続する。スキャナ２２１は、原稿上の画像を読み取って画像データを生成し、スキャナＩ／Ｆ２１７を介して制御部２１０に生成した画像データを入力する。ネットワークＩ／Ｆ２１８は、制御部２１０（ＭＦＰ１０１）をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ２１８は、ＬＡＮ１１０上の装置（例えば、Ｗｅｂサーバ１０２やフォームデータ管理サーバ１０３）との通信を制御する。
【００１７】
＜Ｗｅｂサーバ＞
次に、図３を参照して、Ｗｅｂサーバ１０２の構成例について説明する。なお、認証Ｗｅｂサーバ１０４及びフォームデータ管理サーバ１０３もＷｅｂサーバ１０２と同様の構成である。制御部３１０は、ＣＰＵ３１１、ＲＯＭ３１２、ＲＡＭ３１３、ＨＤＤ３１４、及びネットワークＩ／Ｆ３１５を備える。制御部３１０は、Ｗｅｂサーバ１０２全体の動作を制御する。ＣＰＵ３１１は、ＲＯＭ３１２に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ３１４は、画像データや各種プログラムを記憶する。ネットワークＩ／Ｆ３１５は、制御部３１０（Ｗｅｂサーバ１０２）をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ３１５は、ＬＡＮ１１０上の他の装置との間で各種情報を送受信する。
【００１８】
＜情報処理装置のソフトウェア構成＞
次に、図４を参照して、ＭＦＰ１０１のソフトウェア構成について説明する。図４に示す各機能部は、ＭＦＰ１０１のＨＤＤ２１４に格納されたプログラムを、ＭＦＰ１０１のＣＰＵ２１１が実行することによって実現される。なお、ＭＦＰ１０１には、図示した機能部以外にも、各種の機能部が備えられている。また、本発明においては、これに限定されず、以下で説明するソフトウェア構成がハードウェア構成、又は、ハードウェア構成とソフトウェア構成の組み合わせとして実現されてもよい。
【００１９】
ＭＦＰ１０１は、ソフトウェア構成として、以下を備える。すなわち、メニュー管理部４０１、ログイン部４０２、ＨＴＴＰ通信部４０３、Ｗｅｂブラウザ４０４、スクリプト実行部４０５、ログインユーザ管理部４０６、Ｗｅｂブラウザ監視部４０７、画像形成部４０８、出力部４０９である。メニュー管理部４０１は、ＭＦＰ１０１の各ソフトウェアモジュール（機能部）を起動するためのメニュー画面を表示するための機能部である。コピー画面や後述するＷｅｂブラウザの画面等の表示を指示するためのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）ボタンを一覧で表示する。また、ユーザによってボタンが操作（例えば、押下）されたことに応じて、対応するソフトウェアモジュール（機能部）を起動させる。
【００２０】
ログイン部４０２は、ＭＦＰ１０１を操作するユーザを識別するために、ＭＦＰ１０１の使用開始時にユーザからユーザ情報の入力を受け付けてユーザ認証を行う。なお、ここでのユーザ情報の入力は、後述するＷｅｂブラウザの画面ではなく、ＭＦＰ１０１内に保持されている画面データに基づいて操作部２１９に表示される画面で受け付ける。また、ユーザ情報の入力方法としては、操作部２１９に表示されたソフトウェアキーボードをユーザがタイプして入力する方法、或いは、ＩＣカードに格納されたユーザ情報を読み出して入力する方法等が用いられてよい。また、ユーザ情報の照合は、ログイン部４０２が行うものとするが、ユーザ情報のデータベースを管理する管理サーバを外部に別途設け、ユーザ情報の照合を管理サーバ側で行うようにしてもよい。ログイン部４０２は、ユーザ認証が成功した場合に、ユーザによるＭＦＰ１０１の使用を許可する。
【００２１】
ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）通信部４０３は、ネットワークＩ／Ｆ２１８を制御し、ＨＴＴＰに従った通信を実行する。Ｗｅｂブラウザ４０４は、ＨＴＴＰ通信部４０３を介してＷｅｂサーバ１０２と通信を行う。Ｗｅｂブラウザ４０４は、操作部２１９を介してユーザから指定されたＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を使用し、当該ＵＲＬに対応するＨＴＭＬデータを、Ｗｅｂサーバ１０２に備えられたＷｅｂアプリケーションに対して要求する。また、この要求に対する応答としてＷｅｂアプリケーションから送信されたＨＴＭＬデータ（画面情報）を受信し、受信したＨＴＭＬデータに基づく画面を操作部２１９に表示する。
【００２２】
スクリプト実行部４０５は、Ｗｅｂブラウザ４０４が読み込んだスクリプト（例えば、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔ）を解釈し、Ｗｅｂブラウザ４０４上に表示されるコンテンツを操作したり、ＨＴＴＰ通信部４０３による通信を実行させたりする。ログインユーザ管理部４０６は、ＭＦＰ１０１にログインしているユーザ（ログイン部４０２によって認証されたユーザ）のユーザ名やメールアドレス等のユーザ情報を管理する。また、ログインユーザ管理部４０６は、ログイン部４０２によって認証される各ユーザが使用可能なＭＦＰ１０１の機能を管理しており、認証されたユーザに応じて各機能の使用可否（実行可否）を判断することができる。本実施形態においては、ログインユーザ管理部４０６において、認証されたユーザ毎に、後述するＷｅｂブラウザのオートコンプリート機能（オートコンプリート処理）の使用可否が判断される。ここで、オートコンプリート機能とは、画面の中の任意のフォームに予め定義されたデータを反映した状態で表示する機能をいう。例えば、認証画面において、ＭＦＰ１０１を現在使用しているユーザに応じたユーザ名及びパスワードを入力した状態で表示することにより、ユーザ名及びパスワードに関するユーザ入力を省略することができる。
【００２３】
Ｗｅｂブラウザ監視部４０７は、Ｗｅｂブラウザ４０４の動作を監視する。具体的に、Ｗｅｂブラウザ監視部４０７は、Ｗｅｂブラウザ４０４によるＨＴＭＬデータのロードが完了したか否か、或いは、画面の表示が完了したか否かを判断する。また、Ｗｅｂブラウザ監視部４０７は、図１５で後述するスクリプトを予め保持しており、Ｗｅｂブラウザ４０４の動作に応じて自動的に、Ｗｅｂブラウザ４０４に対してスクリプトのロードを指示する。なお、本実施形態では、図５を用いて後述するスクリプトが実行され、ＨＴＭＬデータが完了したことがＷｅｂブラウザ監視部４０７に通知された場合に、スクリプトのロードを指示するものとする。図５は、Ｗｅｂブラウザ４０４からのＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプト（第１のスクリプト）の例である。図５に示すスクリプト（Ｊａｖａ（登録商標）スクリプト）は、Ｗｅｂブラウザ監視部４０７に通知することを定義している。したがって、後述するＷｅｂアプリケーション８１０は、Ｗｅｂブラウザ４０４からの要求に応答して送信するＨＴＭＬデータに当該スクリプトを埋め込むことで、Ｗｅｂブラウザ監視部４０７へＨＴＭＬデータのロード完了を通知させることができる。つまり、Ｗｅｂアプリケーション８１０は、例えば、当該スクリプトをＨＴＭＬデータに埋め込むことで、オートコンプリート機能が必要に応じて実行されるように制御することができる。このように、スクリプトとは、本実施形態におけるスクリプト実行部４０５が行う、一連の処理手順が定義されているものである。
【００２４】
画像形成部４０８は、画像を形成し、出力部４０９は、形成された画像をもとに出力する。
【００２５】
＜フォームデータ管理サーバのソフトウェア構成＞
次に、図６を参照して、フォームデータ管理サーバ１０３のソフトウェア構成について説明する。図６に示す各機能部は、フォームデータ管理サーバ１０３のＨＤＤ３１４に格納されたプログラムを、フォームデータ管理サーバ１０３のＣＰＵ３１１が実行することによって実現される。なお、フォームデータ管理サーバ１０３には、図示した機能部以外にも、各種の機能部が備えられている。フォームデータ管理サーバ１０３には、「ｆｏｒｍｄａｔａｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ」というドメイン名を用いてアクセスすることが可能であるものとする。
【００２６】
フォームデータ管理アプリケーション６１０は、ＨＴＴＰ通信部６１１、フォームデータ応答部６１２、フォームデータ管理部６１３、及びスクリプト応答部６１４を備える。フォームデータ管理アプリケーション６１０は、ＬＡＮ１１０上の装置からの要求に応じて、フォームデータやスクリプトの応答を行う。フォームデータについては図７を用いて後述する。ＨＴＴＰ通信部６１１は、ＬＡＮ１１０を介してＨＴＴＰ要求を受信し、フォームデータ応答部６１２やスクリプト応答部６１４から受け取った情報をＨＴＴＰ応答として、ＨＴＴＰ要求を送信した装置に送信する。
【００２７】
フォームデータ応答部６１２は、ＨＴＴＰ通信部６１１を介して受け取る外部からの要求に応じてフォームデータに関する処理を行う。具合的には、「ｈｔｔｐｓ：／／ｆｏｒｍｄａｔａｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｌｏａｄＳｅｒｖｉｃｅ」というＵＲＬにアクセスされた場合は、後述するフォームデータ管理テーブルに保存されているフォームデータを応答する。また、「ｈｔｔｐｓ：／／ｆｏｒｍｄａｔａｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｓａｖｅＳｅｒｖｉｃｅ」というＵＲＬにアクセスされた場合は、フォームデータをフォームデータ管理テーブルに新たに保存する。
【００２８】
スクリプト応答部６１４は、ＨＴＴＰ通信部６１１を介して受け取る外部からの要求に応じてスクリプトを応答する。具体的には、「ｈｔｔｐｓ：／／ｆｏｒｍｄａｔａｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｊｓ／ｍａｉｎ．ｊｓ」というＵＲＬにアクセスされた場合に、スクリプト応答部６１４が予め保持しているスクリプトを応答する。
【００２９】
＜フォームデータ管理テーブル＞
次に、図７を参照して、フォームデータ管理部６１３が保持するフォームデータ管理テーブル７００について説明する。フォームデータ管理テーブル７００には、複数のフォームデータが定義されている。列７０１には、ＭＦＰ１０１のＷｅｂブラウザ４０４がＨＴＭＬデータを受信するために使用するＵＲＬが格納されている。このＵＲＬによって、ＭＦＰ１０１のＷｅｂブラウザ４０４がアクセスするＷｅｂアプリケーション毎に区別して、フォームデータが管理されている。
【００３０】
列７０２には、ＭＦＰ１０１にログインするユーザのユーザ名が格納されている。当該ユーザは、ログイン部４０２によって認証される。このユーザ名によって、ＭＦＰ１０１を操作するユーザを区別して、フォームデータが管理されている。列７０３には、ＭＦＰ１０１のＷｅｂブラウザ４０４が受信するＨＴＭＬデータに含まれるフォームの要素名が格納されている。この要素名によって、ＭＦＰ１０１のＷｅｂブラウザ４０４が受信するＨＴＭＬデータに含まれるフォームの種類毎に区別して、フォームデータが管理されている。ここで、フォームとは、本実施形態において、ＨＴＭＬデータに基づいてＷｅｂブラウザ４０４が表示する画面内に含まれるユーザ入力が可能な入力フォームを示す。例えば、後述する図１４におけるユーザ名を入力するためのテキストボックスコントロール１４０２や、パスワードを入力するためのパスワードコントロール１４０３等に対応する。列７０４には、ＭＦＰ１０１のＷｅｂブラウザ４０４が受信するＨＴＭＬデータに含まれるフォームに対して入力すべき値が格納されている。
【００３１】
図７において、「ｕｓｅｒ１」というユーザ名でＭＦＰ１０１にログインし、「ｈｔｔｐ：／／ａｕｔｈａｐｐｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｓｅｒｖｉｃｅ１／ｌｏｇｉｎ．ｈｔｍｌ」のＵＲＬを使用してＨＴＭＬデータを受信した場合を例として説明する。この場合、１行目のレコードに格納されている要素名「ｕｓｅｒｎａｍｅ」及び値「ｘｘｘ」、及び２行目のレコードに格納されている要素名「ｐａｓｓｗｏｒｄ」及び値「ｙｙｙ」がＷｅｂブラウザ４０４に応答される。したがって、Ｗｅｂブラウザ４０４は、ＨＴＭＬデータに含まれる「ｕｓｅｒｎａｍｅ」という要素名のフォームに対して、「ｘｘｘ」という値を設定した状態でＨＴＭＬデータに従った画面を操作部２１９に表示する。また、Ｗｅｂブラウザ４０４は、ＨＴＭＬデータに含まれる「ｐａｓｓｗｏｒｄ」という要素名のフォームに対して、「ｙｙｙ」という値を設定した状態でＨＴＭＬデータに従った画面を操作部２１９に表示する。この一連の処理により、オートコンプリート機能を実現することができ、ＭＦＰ１０１のユーザが「ｘｘｘ」、「ｙｙｙ」という値を手動で入力する手間を省くことができる。
【００３２】
＜Ｗｅｂサーバ、認証Ｗｅｂサーバのソフトウェア構成＞
次に、図８（ａ）を参照して、Ｗｅｂサーバ１０２のソフトウェア構成について説明する。図８（ａ）に示す各機能部は、Ｗｅｂサーバ１０２のＨＤＤ３１４に格納されたプログラムを、Ｗｅｂサーバ１０２のＣＰＵ３１１が実行することによって実現される。Ｗｅｂサーバ１０２は、Ｗｅｂアプリケーション８１０と、ＨＴＴＰ通信部８１３を備える。Ｗｅｂアプリケーション８１０は、プレゼンテーション部８１１と、ロジック部８１２とを備える。
【００３３】
図８（ｂ）を参照して、認証Ｗｅｂサーバ１０４のソフトウェア構成について説明する。図８（ｂ）に示す各機能部は、認証Ｗｅｂサーバ１０４のＨＤＤ３１４に格納されたプログラムを、Ｗｅｂサーバ１０２のＣＰＵ３１１が実行することによって実現される。認証Ｗｅｂサーバ１０４は、認証Ｗｅｂアプリケーション８１４と、ＨＴＴＰ通信部８１７を備える。認証Ｗｅｂアプリケーション８１４は、プレゼンテーション部８１５と、ロジック部８１６とを備える。ＨＴＴＰ通信部８１７、プレゼンテーション部８１５と、ロジック部８１６は、それぞれ、ＨＴＴＰ通信部８１３、プレゼンテーション部８１１と、ロジック部８１２と同様の機能を有する。
【００３４】
Ｗｅｂアプリケーション８１０は、Ｗｅｂブラウザ４０４からのＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプト（第１スクリプト）をＨＴＭＬデータに埋め込むことができる。これにより、Ｗｅｂアプリケーション８１０は、オートコンプリート機能を適用するか否かを制御することもできる。Ｗｅｂアプリケーション８１０は、その他にも、ＭＦＰ１０１に対するユーザの指示を受け付ける画面を表示するためのＨＴＭＬデータや、ＭＦＰ１０１に対する画像処理の実行指示等を送信する。
【００３５】
認証Ｗｅｂアプリケーション８１４は、ＭＦＰ１０１のＷｅｂブラウザ４０４からの要求に対する応答として、ユーザを認証するために使用されるユーザ情報の入力を受け付けるユーザ情報入力画面を表示するためのＨＴＭＬデータをＭＦＰ１０１へ送信する。このＨＴＭＬデータには、上述したフォームの情報が含まれる。Ｗｅｂアプリケーション８１０は、図７の列７０１に定義されている特定のＵＲＬ（特定の画面情報）を指定することで、オートコンプリート機能を適用するか否かを制御することができる。Ｗｅｂアプリケーション８１０とは別のドメインの認証Ｗｅｂアプリケーション８１４のＵＲＬを指定することもできる。
【００３６】
プレゼンテーション部８１１は、ＨＴＴＰ通信部８１３を介して、ＭＦＰ１０１のＷｅｂブラウザ４０４にＨＴＭＬデータを提供する。また、プレゼンテーション部８１１は、ＨＴＴＰ通信部８１３を介して、Ｗｅｂブラウザ４０４から送信されてくるフォームデータを受け取る。ロジック部８１２は、プレゼンテーション部８１１を介して受け取ったフォームデータに関する処理を行う。本実施形態では、フォームデータとしてＷｅｂブラウザ４０４から送信されるユーザ情報（Ｗｅｂブラウザ４０４に表示された画面上で、ユーザが手動で入力したもの、或いは、オートコンプリート機能を用いて入力されたもの）に関する処理を行う。当該処理は、例えば、予めデータベースに管理しているユーザ情報との照合を行い、一致するものが存在する場合に、Ｗｅｂアプリケーション８１０の使用を許可する処理である。Ｗｅｂアプリケーション８１０の使用を許可する場合は、Ｗｅｂアプリケーション８１０の操作画面を表示するためのＨＴＭＬデータをＷｅｂブラウザ４０４に応答する。
【００３７】
＜監視処理＞
次に、図９を参照して、ＭＦＰ１０１において、Ｗｅｂブラウザ監視部４０７がＷｅｂブラウザ４０４におけるＨＴＭＬデータのロード完了を監視し、Ｗｅｂブラウザ４０４に対してスクリプトのロードを指示する処理について説明する。図９のフローチャートは、ログイン部４０２によるユーザ認証が成功し、ユーザがＭＦＰ１０１の使用を開始したときに実行される。なお、図９のフローチャートに示す各動作（ステップ）は、ＭＦＰ１０１のＣＰＵ２１１がＨＤＤ２１４に記憶された制御プログラムを実行することにより実現される。
【００３８】
Ｓ９０１において、ＣＰＵ２１１は、ログインユーザ管理部４０６に対する問い合わせを行い、ＭＦＰ１０１を現在使用しているユーザが、オートコンプリート機能の使用が許可されたユーザであるか否かを判定する。ここで、ログインユーザ管理部４０６は、ユーザごとにオートコンプリート機能の使用が許可されているか否かを示す情報を管理しており、例えば、ＣＰＵ２１１から受信したユーザＩＤを用いて管理している情報を検索することにより判定する。判定の結果、オートコンプリート機能の使用が許可されたユーザである場合はＳ９０２に進み、オートコンプリート機能の使用が許可されたユーザでなければ処理を終了する。
【００３９】
Ｓ９０２において、ＣＰＵ２１１は、Ｗｅｂブラウザ４０４を操作部２１９に表示中であるか否かを判定する。この判定は、Ｗｅｂブラウザ４０４が起動中であるか否かに基づいて判定してもよいし、Ｗｅｂブラウザ４０４が操作部２１９の最前面に表示されているか否かに基づいて判定してもよい。判定の結果、Ｗｅｂブラウザ４０４が表示中である場合はＳ９０３に進み、Ｗｅｂブラウザ４０４が表示中でなければＳ９０６に進む。
【００４０】
Ｓ９０３において、ＣＰＵ２１１は、Ｗｅｂブラウザ４０４によるＨＴＭＬデータのロード完了通知があるかどうかを判定する。判定の結果、ＨＴＭＬデータのロードが完了した場合はＳ９０４に進み、ＨＴＭＬデータのロードが完了していなければＳ９０６に進む。
【００４１】
Ｓ９０４において、ＣＰＵ２１１は、Ｗｅｂアプリケーション８０１から渡される「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」と、Ｗｅｂブラウザ４０４にロードされているＨＴＭＬデータのＵＲＬが一致しているかどうかを判定する。尚、「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」は、後述するｓｃｒｉｐｔタグ１２０２に記載されている。判定の結果、一致している場合はＳ９０５に進み、一致していなければＳ９０６に進む。
【００４２】
Ｓ９０５において、ＣＰＵ２１１は、後述するオートコンプリート機能を行うために、Ｗｅｂブラウザ監視部４０７内に保持されているスクリプトのロードをＷｅｂブラウザ４０４に指示して、Ｓ９０６に進む。Ｓ９０６において、ＣＰＵ２１１は、ＭＦＰ１０１からユーザがログアウトしたか否かを判定する。ユーザがログアウトした場合は処理を終了し、ユーザがログアウトしていない場合はＳ９０２に戻る。
【００４３】
＜オートコンプリート機能＞
次に、図１０を参照して、本実施形態におけるオートコンプリート機能について説明する。ユーザ（ユーザ名が「ｕｓｅｒ１」であり、オートコンプリートが許可されているユーザであるものとする）がＭＦＰ１０１にログインすると、最初は、メニュー管理部４０１によってメニュー画面が操作部２１９に表示される。図１１は、メニュー管理部４０１によって表示されるメニュー画面１１００を示す。メニュー画面１１００には、コピーアプリケーションの利用を指示するためのＧＵＩボタン１１０１及びファクスアプリケーションの利用を指示するためのＧＵＩボタン１１０２が表示される。なお、コピーアプリケーション及びファクスアプリケーションは、ＭＦＰ１０１内に備えられているアプリケーションであって、これらのアプリケーションを使用する場合は、Ｗｅｂブラウザ４０４は使用されない。しかし、これらのアプリケーションについてもＷｅｂサーバ１０２が提供するＷｅｂアプリケーションとして動作することも可能である。
【００４４】
ＧＵＩボタン１１０３及び１１０４は、それぞれＬＡＮ１１０上のＷｅｂサーバ１０２に備えられたＷｅｂアプリケーションの利用を指示するためのＧＵＩボタンである。ＧＵＩボタン１１０５は、ＷｅｂアプリケーションからユーザをログアウトさせるためのＧＵＩボタンである。ＧＵＩボタン１１０３及び１１０４には、それぞれ異なるＵＲＬが割り付けられている。ここでは、ＧＵＩボタン１１０３に、Ｗｅｂアプリケーション８１０に対応するＵＲＬが対応付けられているものとする。
【００４５】
ＧＵＩボタン１１０３が押下（操作）されると、図１０のＳ１００１において、メニュー管理部４０１は、Ｗｅｂブラウザ４０４を起動させるとともに、操作部２１９の最前面にＷｅｂブラウザ４０４を表示するように制御する。また、ＧＵＩボタン１１０３に割り付けられているＵＲＬを使用して、Ｗｅｂアプリケーション８１０に対するＨＴＭＬデータの要求を行うようにＷｅｂブラウザ４０４に指示する。
【００４６】
Ｓ１００２において、Ｗｅｂブラウザ４０４は、メニュー管理部４０１からの指示に従って、Ｗｅｂアプリケーション８１０に対してＨＴＭＬデータを要求する。Ｓ１００３において、Ｗｅｂアプリケーション８１０は、Ｗｅｂアプリケーション８１０のトップ画面を表示するためのＨＴＭＬデータをＷｅｂブラウザ４０４へ応答（送信）する。
【００４７】
図１２に、Ｓ１００３でＷｅｂアプリケーション８１０が応答するＨＴＭＬデータ（取得要求の応答データ）を示す。なお、本実施形態の画面データは、ＨＴＭＬ形式で記述されたものであるが、説明を簡略化するためにスタイルシートの設定等については省略する。
【００４８】
ｓｃｒｉｐｔタグ１２０１は、図５で示したＷｅｂブラウザ４０４によりＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプトである。ｓｃｒｉｐｔタグ１２０２は、ｓｃｒｉｐｔタグ１２０１のスクリプトのファンクションに「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」を渡した上でｓｃｒｉｐｔタグ１２０１のスクリプトを実行するスクリプトである。ｍｅｔａタグ１２０３は、「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」（リダイレクト先の認証Ｗｅｂサーバ）へリダイレクトするタグである。
【００４９】
Ｗｅｂアプリケーション８１０からのＨＴＭＬデータをＷｅｂブラウザ４０４がロードし画面の表示が完了すると、Ｓ１００４を実行する。Ｓ１００４は、Ｗｅｂブラウザ４０４が、ｓｃｒｉｐｔタグ１２０１及び１２０２に記載のスクリプトの実行をスクリプト実行部４０５に指示する。スクリプト実行した結果、Ｓ１００５において、スクリプト実行部４０５は、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに対して図５に示す５０１を追記し、画面データを書き換える。具体的には、図５に示す５０１を追記する前に、ｓｃｒｉｐｔタグ１２０２から渡された「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」を付加する。Ｓ１００６において、Ｗｅｂブラウザ４０４は、Ｗｅｂブラウザ監視部４０７に対してロード完了を通知する。
【００５０】
Ｓ１００７において、Ｗｅｂブラウザ４０４は、ｍｅｔａタグ１２０３に従って、Ｗｅｂアプリケーション８１０からリダイレクトする先の認証Ｗｅｂアプリケーション８１４に対してＨＴＭＬデータを要求する。Ｓ１００８において、認証Ｗｅｂアプリケーション８１４は、ユーザを認証するために使用するユーザ情報の入力を受け付けるユーザ情報入力画面を表示するためのＨＴＭＬデータをＷｅｂブラウザ４０４へ応答（送信）する。
【００５１】
図１３に、Ｓ１００８で認証Ｗｅｂアプリケーション８１４が応答するＨＴＭＬデータを示す。なお、本実施形態の画面データは、ＨＴＭＬ形式で記述されたものであるが、説明を簡略化するためにスタイルシートの設定等については省略する。
【００５２】
図１４（ａ）は、図１３に示すＨＴＭＬデータに基づいてＷｅｂブラウザ４０４に表示される画面を示す。ＧＵＩ画面１４０１には、ｉｎｐｕｔタグ１３０１に基づいてユーザ名を入力するためのテキストボックスコントロール１４０２が表示される。また、ｉｎｐｕｔタグ１３０２に基づいてパスワードを入力するためのパスワードコントロール１４０３が表示される。また、ｉｎｐｕｔタグ１３０３に基づいて、テキストボックスコントロール１４０２に入力されたユーザ名と、パスワードコントロール１４０３に入力されたパスワードとを用いてログインするためのＧＵＩボタン１４０４が表示される。
【００５３】
Ｓ１００９において、Ｗｅｂブラウザ監視部４０７は、「現在Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータを受信するために使用したＵＲＬ」と「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」が一致しているかを判定する。「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」は、ｓｃｒｉｐｔタグ１２０２に含まれる。判定の結果、一致している場合はＳ１０１０に進む。一致していない場合は、一定間隔の時間を空けてＳ１００９の処理を繰り返す。Ｓ１００９の処理を繰り返して、判定した結果、一致した場合のみ、Ｓ１０１０に進む。尚、Ｓ１００９は、Ｓ１００６のロード完了通知をトリガーとして、処理を行う。
【００５４】
Ｓ１０１０において、Ｗｅｂブラウザ監視部４０７は、Ｗｅｂブラウザ４０４に対して、スクリプトのロードを指示する。この処理は、図９のＳ９０５の処理に対応する処理である。
【００５５】
図１５は、Ｗｅｂブラウザ監視部４０７がＷｅｂブラウザ４０４に対してロードを指示するスクリプトの例である。図１５は、説明を簡略化するために改行しているが、実際には改行やスペースのない文字列である。図１５に示すスクリプトは、１５０１のＵＲＬを外部スクリプトとしてＨＴＭＬデータに追加（画面データを書き換え）することを定義している。１５０１のＵＲＬは、「スクリプト応答部６１４のＵＲＬ」に、「現在Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータを受信するために使用したＵＲＬ」及び「現在ＭＦＰ１０１にログインしているユーザのユーザ名」をクエリとして結合したものである。
【００５６】
「スクリプト応答部６１４のＵＲＬ」は、Ｗｅｂブラウザ監視部４０７が予め保持している情報である。「現在Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータを受信するために使用したＵＲＬ」及び「現在ＭＦＰ１０１にログインしているユーザのユーザ名」は、ＭＦＰ１０１の状態に応じて動的に決定される情報である。なお、図１５に示すスクリプトに、同一のスクリプトを同一のＨＴＭＬデータに２回以上ロードしないようにするための記述を加えることが望ましい。
【００５７】
Ｓ１０１１において、Ｗｅｂブラウザ４０４は、Ｗｅｂブラウザ監視部４０７からロード指示されたスクリプトの実行を、スクリプト実行部４０５に対して指示する。この指示に応じて、スクリプト実行部４０５は、図１５のスクリプトを実行する。
【００５８】
図１５のスクリプトには、上述した通り、ＨＴＭＬデータの書き換えが定義されている。したがって、スクリプト実行部４０５がスクリプトを実行すると、Ｓ１０１２において、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに対して１５０１が追記され、画面データが書き換えられる。
【００５９】
Ｓ１０１３において、Ｗｅｂブラウザ４０４は、Ｓ１０１２におけるスクリプトタグの追記に応じて、フォームデータ管理アプリケーション６１０に対して、スクリプト（第２スクリプト）を要求する。この要求には、１５０１に示される通り、「現在Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータを受信するために使用したＵＲＬ」を示す情報及び「現在ＭＦＰ１０１にログインしているユーザのユーザ名」を示す情報が含まれている。
【００６０】
Ｓ１０１４において、フォームデータ管理アプリケーション６１０のスクリプト応答部６１４は、スクリプトをＷｅｂブラウザ４０４に応答する。このとき、スクリプト応答部６１４は、フォームデータ管理部６１３が保持するフォームデータ管理テーブルにアクセスし、クエリ文字列に含まれる「ＵＲＬ」及び「ユーザ名」に対応する行を決定する。例えば、図７に示す列７０１及び列７０２の情報である。
【００６１】
スクリプト応答部６１４は、決定した行にアクセスするためのＩＤを、フォームデータ管理部６１３に発行させる。ここではＩＤとして「０１２３４５６７８９」が発行されるものとする。このＩＤを用いることで、フォームデータ管理テーブル７００に含まれるフォームデータを取得することが可能となるが、フォームデータ管理テーブル７００に対するアクセスが所定時間以上ない場合は、ＩＤが無効化される。
【００６２】
図１６は、スクリプト応答部６１４が応答するスクリプトの例である。１６０１は、オートコンプリートのためのフォームデータをフォームデータ管理アプリケーション６１０に対して要求し、Ｗｅｂブラウザ４０４にロードされたＨＴＭＬデータに含まれる要素に値を設定するファンクションを示す。
【００６３】
１６０２は、フォームデータ管理アプリケーション６１０から取得したフォームデータを、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに含まれる要素に値を設定するスクリプトである。１６０３は、「ｈｔｔｐｓ：／／ｆｏｒｍｄａｔａｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｌｏａｄＳｅｒｖｉｃｅ」のＵＲＬで示されるフォームデータ応答部６１２のフォームデータ取得サービスに対して、フォームデータを要求するスクリプトである。この要求には、フォームデータ管理部６１３が前もって発行したＩＤ「０１２３４５６７８９」が含まれる。
【００６４】
１６０４は、Ｗｅｂブラウザ４０４により表示された画面を介してユーザが入力したフォームデータ（ここでは、ユーザ情報）をフォームデータ管理アプリケーション６１０に送信し、保存させるためのファンクションを示す。１６０５は、ＨＴＭＬデータに含まれるフォームから、要素名及び値を読み取って、「ｒｅｑｄａｔａ」という変数に設定するスクリプトである。１６０６は、「ｈｔｔｐｓ：／／ｆｏｒｍｄａｔａｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｓａｖｅＳｅｒｖｉｃｅ」のＵＲＬで示されるフォームデータ応答部６１２のフォームデータ保存サービスに対して前述の「ｒｅｑｄａｔａ」の保存を要求するスクリプトである。この要求には、フォームデータ管理部６１３が前もって発行したＩＤ「０１２３４５６７８９」が含まれる。
【００６５】
１６０７は、図１６のスクリプトが読み込まれたときに自動的に実行するファンクションを示す。１６０８は、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに、１６０１のファンクションを呼び出すための表示オブジェクト（ボタン）を追加するスクリプトである。１６０９は、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに、１６０４のファンクションを呼び出すための表示オブジェクト（ボタン）を追加するスクリプトである。１６１０は、１６０１のファンクションを呼び出すためのスクリプトである。
【００６６】
Ｓ１０１５において、Ｗｅｂブラウザ４０４は、フォームデータ管理アプリケーション６１０から応答されたスクリプトの実行を、スクリプト実行部４０５に対して指示する。この指示に応じて、スクリプト実行部４０５は、図１６のスクリプトを実行する。Ｓ１０１６において、スクリプト実行部４０５は、１６０８及び１６０９のスクリプトを実行し、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに、ＧＵＩボタンを表示するためのデータを追加する。続いて、スクリプト実行部４０５は、１６１０のスクリプトを実行することにより、１６０１のファンクションが呼び出され、１６０３のスクリプトが実行される。
【００６７】
Ｓ１０１７において、スクリプト実行部４０５は、１６０３のスクリプトを実行した結果として、フォームデータ管理アプリケーション６１０に対するフォームデータを要求する。この要求を受けたフォームデータ管理アプリケーション６１０は、Ｓ１０１８において、フォームデータ管理テーブル７００に含まれるフォームデータのうち、要求に含まれるＩＤに対応するフォームデータを、フォームデータ応答部６１２によって応答する。
【００６８】
図７の場合、「ｈｔｔｐ：／／ａｕｔｈａｐｐｓｅｒｖｅｒ．ｘｘｘ．ｙｙｙ／ｓｅｒｖｉｃｅ１／ｌｏｇｉｎ．ｈｔｍｌ」及び「ｕｓｅｒ１」の２つのキーに一致する要素名と値が応答される。具体的には、「ｕｓｅｒｎａｍｅ」について「ｘｘｘ」、「ｐａｓｓｗｏｒｄ」について「ｙｙｙ」の情報が応答される。スクリプト実行部４０５は、Ｓ１０１８でフォームデータ管理アプリケーション６１０からの応答を受け取った後、スクリプト１６０２を実行する。Ｓ１０１９では、スクリプト１６０２を実行した結果として、フォームデータ管理アプリケーション６１０から取得したフォームデータを、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに設定すべく、ＨＴＭＬデータを書き換える。
【００６９】
図１４（ｂ）は、Ｓ１０１６及びＳ１０１９の処理が行われた結果、Ｗｅｂブラウザ４０４に表示される画面を示す。ＧＵＩボタン１７０１及びＧＵＩボタン１７０２は、Ｓ１０１６におけるＨＴＭＬデータの書き換えによって追加される表示オブジェクトである。また、Ｓ１０１９の処理の結果として、１７０３及び１７０４に示す通り、テキストボックスコントロール１４０２及びパスワードコントロール１４０３にユーザ名「ｘｘｘ」及びパスワード「ｙｙｙ」がオートコンプリート（プリセット）される。なお、１７０４には実際には「ｙｙｙ」という値が設定されているが、内容がパスワードであるため画面上では「＊＊＊」と表示される。
【００７０】
図１４（ｂ）のようにユーザ情報がオートコンプリートされた状態から、ユーザが１７０３及び１７０４の内容を誤って変更してしまったときは、ＧＵＩボタン１７０１を押下することにより、再度オートコンプリートの処理を実行させることができる。ユーザによってＧＵＩボタン１７０１が押下されると、Ｗｅｂブラウザ４０４がスクリプト実行部４０５を呼び出し、１６０１のスクリプトが実行される。
【００７１】
＜フォームデータの保存処理＞
次に、図１７を参照して、Ｗｅｂブラウザ４０４によって表示されている画面にユーザが手動で入力したユーザ情報を次回以降のログイン処理のためにフォームデータ管理アプリケーション６１０に新たに保存する処理について説明する。つまり、当該保存処理は、新たなユーザ情報が入力された場合に、次回のログイン処理時にオートコンプリート機能を実行するためのユーザ情報を保存する。図１７に示すシーケンスは、図１４（ｂ）に示す画面がＷｅｂブラウザ４０４によって表示されている状態で、ユーザが手動で情報入力した後、ＧＵＩボタン１７０２を押下すると開始される。
【００７２】
Ｓ１８０１において、Ｗｅｂブラウザ４０４は、スクリプト実行部４０５に対して、図５の１６０４に示すスクリプトの実行を指示する。Ｓ１８０２において、スクリプト実行部４０５は、１６０４のスクリプトを実行し、その結果、フォームデータ管理アプリケーション６１０に対してフォームデータの保存を要求する。この要求には、フォームの要素名及び値、更に前もって発行されているＩＤが含まれる。フォームデータ管理アプリケーション６１０側では、スクリプト実行部４０５からの要求に応じて、フォームデータ管理テーブル７００の内容を更新する。
【００７３】
以上説明したように、本実施形態によれば、特定のＵＲＬを使用したＨＴＭＬデータの受信（及び画面の表示）が行われたときに、ＭＦＰ１０１外部のフォームデータ管理アプリケーション６１０に管理されているフォームデータがオートコンプリートされる。これにより、例えば、Ｗｅｂアプリケーション８００とは別のドメインの認証Ｗｅｂアプリケーション８１４にログインするためのユーザ情報入力画面に入力が必要なユーザ情報をユーザが入力する手間を省くことができる。また、新たなユーザ情報が入力された場合には、当該情報をフォームデータ管理アプリケーション６１０に通知して情報を更新することができる。このように、本実施形態によれば、オートコンプリートに関する情報をＭＦＰ１０１等のクライアント装置で管理する必要がなく、サーバ装置であるフォームデータ管理サーバ１０３で管理することができる。したがって、本システムにおけるクライアント装置は、Ｗｅｂサーバ１０２及びフォームデータ管理サーバ１０３を利用することにより、自装置において各ユーザの情報を保持することなく、オートコンプリート機能を実現することができる。また、本実施形態によれば、上述したように、Ｗｅｂアプリケーション８１０とは別のドメインの、ユーザによる情報入力の手間を軽減する対象となるページをＷｅｂアプリケーション８１０が指定することができる。したがって、情報処理システムの全てのクライアント装置をメンテナンスすることなくＷｅｂサーバ１０２をメンテナンスすることにより、オートコンプリート機能を容易にメンテナンスすることもできる。なお、本発明は、Ｗｅｂサーバ１０２及びフォームデータ管理サーバ１０３を統合したサーバを適用することもできる。
【００７４】
なお、ユーザ認証に使用されるユーザ情報をオートコンプリートする例を説明したが、オートコンプリートの対象とする情報はこれに限らず、例えば、検索キーワードや定型の挨拶文などを対象としてもよい。また、オートコンプリートの対象は、キーワードだけに限らず、プルダウンからの選択やチェックボックスに対するチェックの入力に応用することも可能である。
【００７５】
また、図１０のＳ１０１３、Ｓ１０１４、Ｓ１０１７、及びＳ１０１８では、スクリプト実行部４０５やＷｅｂブラウザ４０４がフォームデータ管理アプリケーション６１０と通信しているが、これをＷｅｂブラウザ監視部４０７が仲介するようにしてもよい。この場合は、フォームデータ管理アプリケーション６１０側がＨＴＴＰ以外の通信プロトコルに対応するものであってもよいという利点がある。
【００７６】
また、図１５に示すスクリプトをＷｅｂブラウザ監視部４０７が保持する例について説明したが、代わりに、Ｗｅｂブラウザ４０４がブックマークとして保持するようにしてもよい。この場合、図１０のＳ１００９におけるスクリプトロード指示では、Ｗｅｂブラウザ監視部４０７がブックマークＩＤを指定し、Ｗｅｂブラウザ４０４は指定されたブックマークＩＤに対応するブックマーク情報（図１５のスクリプト）をロードする。
【００７７】
＜第２の実施形態＞
次に、図１８乃至図２１を参照して、第２の実施形態について説明する。本実施形態では、ＵＲＬチェック処理の実行回数を必要最低限にすることで、全体のパフォーマンスの低下を防止する実施形態について説明する。
【００７８】
図１８を参照して、ＭＦＰ１０１において、Ｗｅｂブラウザ監視部４０７がＷｅｂブラウザ４０４におけるＨＴＭＬデータのロード完了を監視し、Ｗｅｂブラウザ４０４に対してスクリプトのロードを指示する処理について説明する。図１８のフローチャートは、ログイン部４０２によるユーザ認証が成功し、ユーザがＭＦＰ１０１の使用を開始したときに実行される。なお、図１８のフローチャートに示す各動作（ステップ）は、ＭＦＰ１０１のＣＰＵ２１１がＨＤＤ２１４に記憶された制御プログラムを実行することにより実現される。
【００７９】
Ｓ１８０１からＳ１８０３は、それぞれＳ９０１からＳ９０３と同様の処理である。
【００８０】
Ｓ１８０４において、ＣＰＵ２１１は、Ｓ１８０４に到達した回数が１回目かどうかを判定する。判定の結果、１回目である場合はＳ１８０５に進み、そうでなければＳ１８０６に進む。
Ｓ１８０４において、ＣＰＵ２１１は、Ｗｅｂアプリケーション８０１から渡される「ＵＲＬチェック処理の開始を遅延する時間」の時間の間、処理を止め、経過後にＳ１８０６に進む。尚、「ＵＲＬチェック処理の開始を遅延する時間」は、後述するｓｃｒｉｐｔタグ２１０２に記載されている。
【００８１】
Ｓ１８０６において、ＣＰＵ２１１は、Ｗｅｂアプリケーション８０１から渡される「ＵＲＬチェック処理の回数上限」が、Ｓ１８０６に到達した累積回数以上であるかどうかを判定する。尚、「ＵＲＬチェック処理の回数上限」は、後述するｓｃｒｉｐｔタグ２１０２に記載されている。判定の結果、「ＵＲＬチェック処理の回数上限」が、Ｓ１８０６に到達した累積回数以上である場合はＳ１８０７に進み、一致していなければＳ１８０９に進む。
【００８２】
Ｓ１８０７からＳ１８０９は、それぞれＳ９０４からＳ９０６と同様の処理である。
【００８３】
図１９を参照して、本実施形態におけるオートコンプリート機能について説明する。Ｓ１９０１からＳ１９０４は、それぞれＳ１００１からＳ１００４と同様の処理である。
【００８４】
図２０は、Ｗｅｂブラウザ４０４からのＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプト（第１のスクリプト）の例である。図２１は、Ｓ１９０３でＷｅｂアプリケーション８１０が応答するＨＴＭＬデータ（取得要求の応答データ）の例である。
【００８５】
ｓｃｒｉｐｔタグ２１０１は、図２０で示したＷｅｂブラウザ４０４によりＨＴＭＬデータのロードが完了したことをＷｅｂブラウザ監視部４０７に通知するスクリプトである。ｓｃｒｉｐｔタグ２１０２は、ｓｃｒｉｐｔタグ２１０１のスクリプトのファンクションに「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」「ＵＲＬチェック処理の開始を遅延する時間」「ＵＲＬチェック処理の回数上限」を渡すスクリプトである。そして、さらに、ｓｃｒｉｐｔタグ２１０１のスクリプトを実行するスクリプトである。ｍｅｔａタグ２１０３は、「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」（リダイレクト先の認証Ｗｅｂサーバ）へリダイレクトするタグである。
【００８６】
Ｓ１９０５において、スクリプト実行部４０５は、Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータに対して図２０に示す２００１を追記し、画面データを書き換える。具体的には、図２０に示す２００１を追記する前に、ｓｃｒｉｐｔタグ２１０２から渡された「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」「ＵＲＬチェック処理の開始を遅延する時間」「ＵＲＬチェック処理の回数上限」を付加する。Ｓ１９０６において、Ｗｅｂブラウザ４０４は、Ｗｅｂブラウザ監視部４０７に対してロード完了を通知する。
【００８７】
Ｓ１９０７からＳ１９０８は、それぞれＳ１００７からＳ１００８と同様の処理である。
【００８８】
Ｓ１９０９において、Ｗｅｂブラウザ監視部４０７は、Ｓ１９０９に到達した回数が１回目かどうかを判定する。「ＵＲＬチェック処理の開始を遅延する時間」は、後述するｓｃｒｉｐｔタグ２１０２に記載されている。判定の結果、１回目である場合はＷｅｂアプリケーション８０１から渡される「ＵＲＬチェック処理の開始を遅延する時間」の時間の間、処理を止め、経過後にＳ１９１０に進み、１回目でない場合はそのままＳ１９１０に進む。尚、Ｓ１９０９は、Ｓ１９０６のロード完了通知をトリガーとして、処理を行う。
【００８９】
Ｓ１９１０において、Ｗｅｂブラウザ監視部４０７は、Ｗｅｂアプリケーション８０１から渡される「ＵＲＬチェック処理の回数上限」が、Ｓ１９１０に到達した累積回数以上であるかどうかを判定する。「ＵＲＬチェック処理の回数上限」は、後述するｓｃｒｉｐｔタグ２１０２に記載されている。判定の結果、「ＵＲＬチェック処理の回数上限」が、Ｓ１９１０に到達した累積回数以上である場合はＳ１９１１に進み、一致していなければ以降の処理を実行しない。
【００９０】
Ｓ１９１１において、Ｗｅｂブラウザ監視部４０７は、「現在Ｗｅｂブラウザ４０４がロードしているＨＴＭＬデータを受信するために使用したＵＲＬ」と「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」が一致しているかを判定する。「ユーザ入力が可能な入力フォームを含む画面のＵＲＬ」は、ｓｃｒｉｐｔタグ２１０２に含まれる。判定の結果、一致している場合はＳ１９１２に進む。一致していない場合は、一定間隔の時間を空けてＳ１９０９に進み、Ｓ１９０９乃至Ｓ１９１１の処理を繰り返す。
【００９１】
Ｓ１９１２からＳ１９２１は、それぞれＳ１０１０からＳ１０１９と同様の処理である。
【００９２】
上述した通り、Ｓ１００９のＵＲＬチェック処理は、２つのＵＲＬが一致していない場合は、一定間隔の時間を空けてＳ１００９の処理を繰り返し、一致した場合のみ、Ｓ１０１０に進む。
【００９３】
第２の実施形態では、Ｓ１００９において「ＵＲＬチェック処理の開始を遅延する時間」の時間を使用して、１回目のＵＲＬチェック処理の開始時間を遅延させる。また、「ＵＲＬチェック処理の回数上限」の回数を使用して、ＵＲＬチェック処理を繰り返すことを中止する。
【００９４】
Ｗｅｂアプリケーション８１０から認証Ｗｅｂアプリケーション８１４に遷移するまでにリダイレクト処理などにより多くの時間を要する場合がある。が、そのような場合でも、第２の実施形態によれば、ＵＲＬチェック処理が多数繰り返さることなく、システム全体のパフォーマンスの低下を防止することができる。
【００９５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2017049966.tif 000003
【図２】
2017049966.tif 000004
【図３】
2017049966.tif 000005
【図４】
2017049966.tif 000006
【図５】
2017049966.tif 000007
【図６】
2017049966.tif 000008
【図７】
2017049966.tif 000009
【図８】
2017049966.tif 000010
【図９】
2017049966.tif 000011
【図１０】
2017049966.tif 000012
【図１１】
2017049966.tif 000013
【図１２】
2017049966.tif 000014
【図１３】
2017049966.tif 000015
【図１４】
2017049966.tif 000016
【図１５】
2017049966.tif 000017
【図１６】
2017049966.tif 000018
【図１７】
2017049966.tif 000019
【図１８】
2017049966.tif 000020
【図１９】
2017049966.tif 000021
【図２０】
2017049966.tif 000022
【図２１】
2017049966.tif 000023