JP5159711B2 - 組込み機器およびその状態表示制御方法 - Google Patents

組込み機器およびその状態表示制御方法 Download PDF

Info

Publication number
JP5159711B2
JP5159711B2 JP2009150823A JP2009150823A JP5159711B2 JP 5159711 B2 JP5159711 B2 JP 5159711B2 JP 2009150823 A JP2009150823 A JP 2009150823A JP 2009150823 A JP2009150823 A JP 2009150823A JP 5159711 B2 JP5159711 B2 JP 5159711B2
Authority
JP
Japan
Prior art keywords
screen
event
browser
document file
status
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009150823A
Other languages
English (en)
Other versions
JP2011008490A (ja
Inventor
貴 芦田
宏幸 田中
健一 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2009150823A priority Critical patent/JP5159711B2/ja
Priority to US12/788,234 priority patent/US8640224B2/en
Publication of JP2011008490A publication Critical patent/JP2011008490A/ja
Priority to US13/464,124 priority patent/US8739303B2/en
Application granted granted Critical
Publication of JP5159711B2 publication Critical patent/JP5159711B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Facsimiles In General (AREA)
  • Computer And Data Communications (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、ブラウザを利用して機器の状態表示や各種の設定を行うに組込み機器に関する。
従来、組込み機器向けのGUI(Graphical User Interface)として、HTMLファイル等の構造化文書を表示するブラウザを利用する技術が知られている。このような組込み機器では、組込み機器内部の情報を取得及び設定可能な、ネイティブコードで記述されたプログラム(以下、外部プログラムという)を用意し、該外部プログラムとブラウザとを連携させることで、ブラウザを利用した組込み機器の状態表示や各種の設定を実現している。
具体的には、構造化文書に記述されるJavaScriptから外部プログラムを呼び出すことで、ブラウザは組込み機器の状態を取得し、或いは組込み機器の操作を行う。また、組込み機器の状態が変化した場合は、組込み機器(ミドルウェア/デバイスドライバ)にブラウザに対してダミーの入力を発行させ、これをトリガーに表示更新を行うことで、ブラウザは組込み機器の状態変化に応じた画面更新も行うことができる。
ところでJavaScriptに外部プログラムへのアクセスを許可すると、悪意を持って記述された文書ファイルがブラウザにより読み込まれた場合、文書ファイルに記述されたJavaScriptが外部プログラムに不正にアクセスし、組込み機器内部の情報が外部のサーバに漏洩するといういわゆるセキュリティホールが発生する。このような問題を解決することを目的とする従来技術として例えば特許文献1が存在する。
特許文献1は、スクリプト処理手段が組み込み装置の情報および動作にアクセスして得た結果を外部に出力する指示をした場合に、その出力を禁止したり、出力の可否をユーザに予め又は指示の度に確認したりする技術を開示する。また特許文献1は、装置オブジェクトモデルを構成するオブジェクト毎にアクセス権限を保持し、スクリプト処理手段がアクセス権限のないオブジェクト、オブジェクトの属性又はオブジェクトの操作へのアクセスを試みた場合には、アクセスの試みを失敗させる技術を開示する。
特開2006−85356号公報
しかしながら、スクリプト処理手段によるアクセスの可否をユーザに予め又は指示の度に確認するという方法では、操作が煩雑となってしまう。またアクセスの可否の判断をユーザに委ねるというのでは、不正なアクセスを完全に防ぐことはできない。これは、装置オブジェクトモデルを構成するオブジェクト毎にアクセス権限を保持し、スクリプト処理手段の権限を、Webブラウザを操作している実行ユーザの権限に等しいものとした場合も同じである。
なお、スクリプト処理手段から、組み込み装置の情報および動作に対するアクセス要求がなされた場合に、これらの要求や指示を監視して一切拒否する構成を採用することで、不正なアクセスを完全に防ぐことは可能である。但しこの場合、悪意のあるなしに関わらず全てのスクリプト処理手段についてそのような要求や指示が拒否されてしまうことになり、利便性が損なわれてしまう。
そこで本発明は、組込み機器において、ブラウザを利用した機器の状態表示や各種の設定を、利便性を損なうことなく安全に行う技術を提供することを目的とする。
上記目的を達成する本発明は、次のような、組込み機器の画面に構造化文書を表示させるブラウザ手段と、前記組込み機器の状態を示す状態情報の前記画面への表示を制御する状態表示制御手段とを備えた組込み機器によって実現される。ここで、前記状態表示制御手段は、前記状態情報の表示要求に応答して、所定の画面構成を記述した文書ファイルを表示するよう前記ブラウザ手段に要求する画面遷移制御手段と、前記ブラウザ手段による前記文書ファイルの読み込みに応答して、前記組込み機器の現在の前記状態情報を取得する機器情報管理手段と、前記ブラウザ手段によって前記文書ファイルから生成されたDOM(Document Object Model)ツリー上の1以上の所定のノードの値を、取得した前記状態情報で更新するように、前記ブラウザ手段に要求するアクセス要求手段とを含む。また、前記ブラウザ手段は、前記状態表示制御手段からの前記文書ファイルの表示要求に応答して、前記組込み機器の記憶手段から前記文書ファイルを読み込み、該文書ファイルを前記画面に表示するよう制御するブラウザ制御手段と、前記状態表示制御手段からの前記1以上の所定のノードのアクセス要求に応答して、該1以上の所定のノードをリストに記録する履歴管理手段と、前記DOMツリー上のノードへのアクセス要求に応答して、アクセス要求元に応じて前記リストを参照し、前記リストに記録されたノードへのアクセス要求は前記状態表示制御手段にのみ許可してアクセス要求の内容を実行するDOM管理手段とを含む。
好ましくは、前記状態情報の表示要求は、前記組込み機器に現在設定されている設定内容の表示要求である。また、前記所定の画面構成を記述した文書ファイルは、設定内容を確認又は変更するための画面構成を記述した設定画面用文書ファイルである。
更に好ましくは、前記ブラウザ手段は、前記画面に表示する文書ファイルに対する操作のイベントを受信して通知するイベント通知手段を含む。そして、前記状態表示制御手段は、前記イベント通知手段からの所定のボタンの押下げイベントの通知に応答して、前記画面遷移制御手段に前記設定内容の表示を要求するイベント処理手段を含む。
また好ましくは、前記状態情報の表示要求は、前記組込み機器内で生じたエラーのエラー発生通知に基づくエラー内容の表示要求である。また、前記所定の画面構成を記述した文書ファイルは、エラー内容を表示するための画面構成を記述したエラー通知画面用文書ファイルである。
更に好ましくは、前記機器情報管理手段は、前記組込み機器のミドルウェア又はデバイスドライバから前記エラー発生通知を受け取る。そして、前記状態表示制御手段は、前記機器情報管理手段からの前記エラー発生通知の転送に応答して、前記画面遷移制御手段に前記エラー内容の表示を要求するイベント処理手段を含む。
また好ましくは、前記状態情報の表示要求は、前記組込み機器が処理しているタスクの処理状況を通知するステータス通知に基づくステータス表示要求である。また、前記所定の画面構成を記述した文書ファイルは、前記タスクのステータスを表示するための画面構成を記述したステータス表示画面用文書ファイルである。
更に好ましくは、前記機器情報管理手段は、前記組込み機器のミドルウェア又はデバイスドライバから前記ステータス通知を受け取る。そして前記状態表示制御手段は、前記機器情報管理手段からの前記ステータス通知の転送に応答して、前記画面遷移制御手段に前記ステータスの表示を要求するイベント処理手段を含む。
また好ましくは、前記画面遷移制御手段は、前記文書ファイルの表示を前記ブラウザ手段に要求する際に、前記文書ファイルの読み込みイベントのフックルーチンを前記ブラウザ手段に対して指定する。そして前記ブラウザ手段は、前記文書ファイルの読み込みイベントに関連付けて、指定された前記フックルーチンをテーブルに登録し、前記テーブルを参照して受信したイベントの通知先を決定するイベント通知手段を更に含む。また、前記状態表示制御手段は、前記イベント通知手段からの前記文書ファイルの読み込みイベントの通知に応答して、前記機器情報管理手段に前記組込み機器の現在の前記状態情報の取得を要求するイベント処理手段を含む。
また好ましくは、前記アクセス要求手段は、前記組込み機器に現在設定されている設定内容の変更要求があった場合に、設定内容を変更するための画面構成を記述した設定画面用文書ファイルから前記ブラウザ手段によって生成されたDOMツリー上の所定のノードの値の参照を前記ブラウザ手段に要求する。そして、前記機器情報管理手段は、前記所定のノードに対応する前記組込み機器に現在設定されている設定内容を、前記アクセス要求手段が参照した前記所定のノードの値に変更する。
以上、本発明を組込み機器として説明したが、本発明は、組込み機器において実行される状態表示制御方法として把握することもできる。
本発明によれば、従来の外部プログラムに相当する状態表示制御手段は、ブラウザやブラウザにより表示されているコンテンツを、ブラウザ内部で動作するJavaScriptを介することなく直接に、かつセキュリティの問題なく安全に制御することができる。従って本発明によれば、組込み機器において、ブラウザを利用して機器の状態表示や各種の設定を利便性を損なうことなくかつ安全に行うことができる。
図1は、本発明の実施形態に係る複合機のハードウェア構成の一例を示す。 図2は、本実施形態に係るウェブブラウザおよび状態表示制御プログラムの機能構成を示す。 図3は、本実施形態に係るイベント管理インタフェース部250において保持されるイベント管理テーブルの一例を示す。 図4は、本実施形態に係る履歴管理部260により管理されるアクセス履歴リストの一例を示す。 図5(a)は、本実施形態に係る複合機100の操作パネルのメイン画面の一例を示す。(b)は、図5(a)に示すメイン画面から遷移する、コピー設定のためのサブ画面の一例を示す。(c)は、図5(b)に示すサブ画面から遷移する、用紙サイズ設定のためのサブ画面の一例を示す。 図6は、図5(b)に示すサブ画面に対応するDOMツリーを示す。 図7は、図5(c)に示すサブ画面に対応するDOMツリーを示す。 図8は、本実施形態に係るイベントのフック処理フローの一例を示す。 図9は、本実施形態に係る第1ボタン押下げイベントの処理フローの一例を示す。 図10は、本実施形態に係る“onLoad”イベント処理フローの一例を示す。 図11は、本実施形態に係る第2ボタン押下げイベント処理フローの一例を示す。 図12は、本実施形態に係る複合機100のエラー通知画面の一例を示す。 図13は、図12に示すエラー通知画面に対応するDOMツリーを示す。 図14は、本実施形態に係るエラー処理フローの一例を示す。 図15は、本実施形態に係る他の “onLoad”イベント処理フローの一例を示す。
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。また、本発明を適用可能な組込み機器は、コピー機やファクシミリ等のオフィス機器、携帯電話やPDA(Personal Degital Assistance)等の情報機器、及びデジタル家電機器等複数あるが、本明細書では組込み機器として複合機を例に本発明を説明する。
図1は、本発明の実施形態に係る複合機100のハードウェア構成の一例を示す。複合機100は、複合機100の全体の制御を司るCPU102と、各種制御プログラムのワークエリアとして機能するメモリ104と、CPU102を動作させる各種制御プログラムを格納したROM106及び外部記憶装置108と、データ通信をおこなう通信部110と、印刷時及びスキャン時に必要な各種の設定等の操作を行うための入力部112と、入力部112と連動して必要な情報を表示する表示部114と、原稿を読み取る原稿読み取り部116と、印字データを転写紙に印字するための印刷部118 とを含む。この他複合機300はファクシミリ機能(図示しない)を有するものであってもよい。
CPU102は、 ROM106及び外部記憶装置108に格納されている各種制御プログラムに従って装置全体を制御する中央制御ユニットである。このCPU102には、バス101を介して、メモリ104、ROM106、外部記憶装置108、通信部110、入力部112、表示部114、原稿読み取り部116、印刷部118が接続されており、データ通信、原稿読み取り動作、プリンタ動作等を制御する。
ROM106及び外部記憶装置108は、CPU102を動作させるための各種制御プログラムやその処理に用いられる各種データを記憶する。各種制御プログラムには、本発明の実施の形態に係るブラウザや状態表示制御プログラムが含まれる。また、各種データには、後述する設定内容を確認又は変更するための画面構成を記述した1以上の設定画面用文書ファイル、エラー内容を表示するための画面構成を記述した1以上のエラー通知画面用文書ファイル、処理状況を表示するための画面構成を記述した1以上のステータス表示画面用文書ファイルが含まれる。メモリ104には、指定された制御プログラムがロードされる。メモリ104は実行中の制御プログラムにより使用されるワークメモリを備える。
通信部110は、外部とデータ通信を行うためのものであり、例えば、ネットワークを介して接続されたサーバ等のコンピュータとデータ通信を行うものである。入力部112は、マウス、スタイラス・ペン等のポインティングデバイスのほか、デジタイザやタブレットを含んでもよい。表示部114は、好ましくはタッチスクリーンにより構成される。原稿読み取り部116は、イメージスキャナを含み、イメージスキャナにより読み取られた画像データを、デジタル・データに変換する。
印刷部118 は、印字データを転写紙等の媒体に印字するユニット、及び、ユーザが設定した機能を実現するための画像処理、即ち、倍率や濃度といった画質に関する処理を含む、画像処理を行うユニットを含む。
図2は、本実施形態に係るブラウザ200および状態表示制御プログラム300の機能構成を示す。まず本実施形態に係るブラウザ200について説明する。本実施形態に係るブラウザ200は、一般的なブラウザと同様に、HTML(Hyper Text Markup Language)やXML(Extensible Markup Language)等で表現された構造化文書ファイルを読み込み、レイアウトを解析して構造化文書ファイルに含まれるテキストデータや画像データ、音声データを画面に表示したり再生したりする機能を有する。また本実施形態に係るブラウザ200は、JavaScriptやJava等の言語で記述されたソフトウェアを動作させる機能を有する。
即ち、本実施形態に係るブラウザ200は、通信部205、コンテンツ解析部210、DOM生成部215、レイアウト決定部225、描画部230、イベント通知部235、スクリプト実行部240、及びブラウザ制御部245を含む。
また本実施形態に係るブラウザ200は、後述する状態表示制御プログラム300がブラウザ200及びブラウザ200により表示されるコンテンツを直接制御できるように、新たにイベント管理インタフェース部250、DOM要求インタフェース部255、及び制御要求インタフェース部265の3つのインタフェースを含む。
更に本実施形態に係るブラウザ200は、上記状態表示制御プログラム300によるブラウザ200及びコンテンツの直接の制御がセキュリティの問題なく安全に行われるように、新たにDOM処理部220及び履歴管理部260を含む。
通信部205は、TCP/IPプロトコルに従って、ウェブサーバ等のネットワーク上の他のコンピュータとの間に接続を確立し通信する。通信部205は、URLによって記述されたリソースに対してHTTP要求を発行し、該要求に対する応答を受信するための通信手段である。
コンテンツ解析部210は、通信部205からHTMLやXML等で表現された構造化文書ファイルを受け取り、これに対し字句解析及び構文解析を行って解析木を取得する。
DOM生成部215は、コンテンツ解析部210から解析木を受け取り、取得した構造化文書ファイルの構造に対応したDOMを生成する。DOMはAPI(Application Programming Interface)の一種であり、コンテンツデータの内容、及びそれらの配置、スタイルをオブジェクトとして扱い、これらオブジェクトを、スクリプト言語を使って制御するための取り決めである。
DOM処理部220は、DOM生成部215が生成したDOMを、オブジェクト間の入れ子関係を表現するツリー構造として、メモリ104上に保持しこれを管理する。またDOM処理部220は、DOM APIを利用してなされるDOMツリー上のノードへのアクセス要求に応答して、アクセス要求元に応じて後述する履歴管理部255により維持されるアクセス履歴リストを参照し、アクセス履歴リストに記録されたノードへのアクセス要求は状態表示制御プログラム300にのみ許可してアクセス要求の内容を実行する。
言い換えると、DOM処理部220は、後述する状態表示制御プログラム300以外のアクセス要求元に対しアクセス履歴リストを参照し、アクセス要求が後述するアクセス履歴リストに記録されているノードへのアクセス要求であった場合にこれを禁止する。なお、本実施例では、DOM処理部220は、表示部114に表示されている画面内の画面要素に対応するDOMオブジェクトのオブジェクト識別子を取得するためのDOM APIの呼び出しは、DOMツリー上のノードへのアクセス要求でないものとしてアクセス履歴リストを参照することなく処理する。これに代えて、DOM処理部220は、全てのDOM APIの呼び出しに対し、上記アクセス制御処理を実行してもよい。
レイアウト決定部225は、DOM処理部220が保持するDOMに基づいて、文書全体のレイアウトを決定する。なおレイアウト決定部225は、構造化文書ファイルにJavaScript等のスクリプトが記述されている場合は、そのスクリプトを後述するスクリプト実行部240へ渡す。
描画部230は、レイアウト決定部225が決定したレイアウトに従って、構造化文書ファイルに含まれるテキストデータや画像データを表示部112に表示する。
イベント通知部235は、入力部112やタッチスクリーンとしての表示部114を介してユーザによりなされた操作等のイベントを受信し、これをDOM処理部220及び後述するイベント管理インタフェース部255へ通知する。イベント通知部235は、まずイベント管理インタフェース部255にイベントを通知する。そして、イベント管理インタフェース部255により該イベントの通知先が見つからなかった場合、イベント通知部235は該イベントをDOM処理部220に通知する。
具体的には、イベント通知部235は、DOM処理部220が管理するDOMツリーを構成するオブジェクト群の中から、受信したイベントを処理すべきオブジェクトを決定し、該オブジェクトにイベントを配信する。イベントを配信されたオブジェクトは、該オブジェクトのインスタンス又はクラスに関連付けて予め登録されたイベントハンドラによりイベントを処理する。なお、イベントハンドラはスクリプトで記述されており、後述するスクリプト実行部240により実行される。
スクリプト実行部240は、イベントハンドラとしてのスクリプト又はレイアウト決定部255から受け取ったスクリプトを実行する。具体的には、スクリプト実行部240は、受け取ったスクリプトの内容に従って、DOM APIを利用してDOM処理部220が保持するDOMを更新して描画部230に再描画を指示したり、通信部205を介してウェブサーバ等の他のコンピュータと通信したりする。
ブラウザ制御部245は、後述する制御要求インタフェース部255からの要求に応じて又はスクリプト実行部240によるスクリプトの実行の結果として、ブラウザのウィンドウをオープン又はクローズし、また、ROM106又は外部記憶装置108に格納された所定の画面構成を記述した構造化文書ファイルを読み込んで、表示部114に表示するようブラウザ200を制御する。
イベント管理インタフェース部(以下、単にAPI−Aともいう)250は、イベント通知部235がDOMオブジェクトに配信するイベントを、状態表示制御プログラム300がフックできるように新たに用意されるAPIである。本実施例では、API−A250は、監視対象となるオブジェクトのオブジェクト識別子、監視対象となるイベントの種類、及び該イベントが発生したときにコールバックされる関数(フックルーチン)のアドレスを引数として呼び出され、これらを関連付けてイベント管理テーブルに登録する(図3参照)。なお図3に示すように、本実施例では、イベントの種類はJavaScriptで定義されている文字列をそのまま使用する。
またAPI−A250は、イベント通知部235からイベントの通知を受け取ると、該イベントがイベント管理テーブルに登録されている監視対象のイベントであるか否か判定する。そしてAPI−A250は、監視対象のイベントについて通知を受けると、イベント管理テーブルからコールバックすべきフックルーチンのアドレスを読み出して、イベントの発生を状態表示制御プログラム300、より詳細には後述するイベント処理部305に通知する。
このように本実施例では、イベント通知部235とAPI−A250とが一緒になって、ブラウザ200のイベント通知手段として機能する。
DOM要求インタフェース部(以下、単にAPI―Bともいう)255は、状態表示制御プログラム300がDOM処理部220により管理されるDOMにアクセスできるように新たに用意されるAPIである。API―B255は、DOMのオブジェクトとオブジェクト識別子とを紐付けて、状態表示制御プログラム300によるAPI―B255の呼び出しをDOM APIにマップする。
本実施例では、API−B255は、表示部114に表示されている画面内の画面要素のID(文字列)を引数として呼び出された場合、受け取った画面要素のIDを引数としてgetElementByIdの呼び出しを行う。getElementByIdは、構造化文書のタグのid属性を引数とし、該id属性により識別される画面要素に対応するDOMオブジェクトを返すDOM APIである。従ってこの場合API−B255は、getElementByIdから返されたオブジェクトに対応するオブジェクト識別子を呼び出し元に返す。
また本実施例では、API−B255は、DOMオブジェクトのオブジェクト識別子を引数として呼び出された場合、オブジェクト識別子により識別されるDOMオブジェクトに対して、getNodeValueの呼び出しを行う。getNodeValueはノードの種類に依存した値を返し、ノードが属性ノードである場合属性値を、ノードがテキストノードである場合その内容の文字列を返すDOM APIである。従ってこの場合API−B255は、getNodeValueからの戻り値をそのまま呼び出し元に返す。
更に本実施例では、API−B255は、DOMオブジェクトのオブジェクト識別子と、任意の文字列とを引数として呼び出された場合、オブジェクト識別子により識別されるDOMオブジェクトに対して、受け取った任意の文字列を引数としてsetNodeValueの呼び出しを行う。setNodeValueはノードの値を受け取った引数の値に変更するDOM APIである。
このようにAPI−B255は、DOMオブジェクトのオブジェクト識別子を含む1以上の引数を指定して呼び出された場合、オブジェクト識別子により識別されるDOMオブジェクトに対して、受け取った残りの引数を使ってDOM APIの呼び出しを行う。またAPI−B255は、DOM APIの戻り値がDOMオブジェクトである場合は該DOMオブジェクトに対応するオブジェクト識別子を、そうでない場合は戻り値をそのまま呼び出し元に返す。このようにして、API―B255の呼び出しはDOM APIにマップされる。
API−B255は、状態表示制御プログラム300からDOMツリー上のノードへのアクセス要求を受け取った場合、即ち、状態表示制御プログラム300からDOMオブジェクトのオブジェクト識別子を引数の1つとして呼び出された場合に、該アクセス要求を後述する履歴管理部260へ通知する。これに代えてAPI−B255は、状態表示制御プログラム300からの全て呼び出しについて、該呼び出しを後述する履歴管理部260へ通知するようにしてもよい。本実施例では、前者の構成を採用する。
履歴管理部260は、API−B255から状態表示制御プログラム300によるDOMノードへのアクセス要求の通知を受けると、アクセス要求のあったノードのオブジェクト識別子をアクセス履歴リストに記録する。履歴管理部260が維持するアクセス履歴リストは、一例としてアクセス要求のあったノードのオブジェクト識別子のリストであってよく、更にアクセス要求のあったノードのオブジェクト識別子にアクセス要求の内容を関連付けて記録するリストであってもよい(図4参照)。この場合API−B255からの通知には、アクセス要求のあったノードのオブジェクト識別子とアクセス内容とが含まれる。
このように本実施例では、API−B255と履歴管理部260とが一緒になって、ブラウザ200の履歴管理手段として機能する。
なお、上述したようにDOM処理部220は、アクセス履歴リストに記録されているノードへのアクセス要求が状態表示制御手段300以外の要求元によりなされた場合これを禁止する。これは、スクリプト実行部240は、状態表示制御手段300によって一度アクセスされたDOMノードにはアクセスできないことを意味し、従って、状態表示制御プログラム300は、ブラウザ200を利用して安全に複合機100内部の情報を表示部114に表示できる。
制御要求インタフェース部(以下、単にAPI−Cともいう)265は、状態表示制御プログラム300が、新規ブラウザウィンドウのオープン、ブラウザウィンドウのクローズ、及び構造化文書の読み込みを制御できるように新たに用意されるAPIである。
本実施例では、API−C265は、ウィンドウのオープンを要求された場合、ブラウザ制御部245に対してウィンドウの新規オープンを要求し、新規ウィンドウにオブジェクト識別子を割り当て、これを状態表示制御プログラム300、より詳細には後述する画面遷移制御部315に返す。またAPI−C265は、ウィンドウのオブジェクト識別子を引数として呼び出される場合、ブラウザ制御部245に対してオブジェクト識別子に対応するウィンドウのクローズを要求する。
またAPI−C265は、ウィンドウのオブジェクト識別子、構造化文書の保存場所(URL)、及び該構造化文書の読み込み終了時に呼び出される“onLoad”イベントの関数(フックルーチン)のアドレスを引数として呼び出される場合、ブラウザ制御部245に指定された構造化文書の読み込みを要求する。更にAPI−C265は、受け取ったウィンドウのオブジェクト識別子と、“onLoad”イベントと、フックルーチンのアドレスとを引数としてAPI−A250を呼び出し、指定された構造化文書の読み込みイベントのフックを要求する。
このように本実施例では、ブラウザ制御部245とAPI−C265とが一緒になって、ブラウザ200のブラウザ制御手段として機能する。
次に本実施形態に係る状態表示制御プログラム300について説明する。本実施形態に係る状態表示制御プログラム300は、従来の外部プログラムが有する組込み機器内部の情報を取得し及び設定する機能に加えて、複合機100の状態を示す状態情報の表示部114への表示を直接制御する機能を有する。
ここで複合機100の状態を示す状態情報は、複合機100に現在設定されている設定の内容、組込み機器内で生じたエラーの内容、及び組込み機器が処理しているタスクのステータスを含む。但し状態情報はこれらの情報に制限されず、現在の用紙の残量や原稿トレー上の原稿の有無等、複合機100の状態を示し得る情報であって、複合機100自体が取得可能な情報を含んでよい。なお、状態表示制御プログラム300による状態情報の取得及び設定は、従来の外部プログラムと同様に複合機100のミドルウェア又はデバイスドライバを介して行われその方法は既知であるため、本明細書では詳細な説明は省略する。
本実施形態に係る状態表示制御プログラム300は、イベント処理部305、機器情報管理部310、画面遷移制御部315、及びアクセス要求部320を含む。
イベント処理部305は、複合機100の状態を示す状態情報の表示要求があった場合に、機器情報管理部310、画面遷移制御部315、及びアクセス要求部320のそれぞれに指示を出しながら、表示要求の処理を行う。ここで状態情報の表示要求は、ユーザ操作に基づく複合機100に現在設定されている設定内容の表示要求、複合機100内でのエラーの発生に基づくエラー内容の表示要求、複合機100内でのタスク開始に基づくタスクのステータス表示要求のいずれかであってよい。
なおエラー内容の表示要求及びステータスの表示要求は、後述する機器情報管理部310が複合機100のミドルウェア又はデバイスドライバから受け取ったエラー発生通知又はタスクのステータス通知をイベント処理部305に転送することで、イベント処理部305に通知される。一方設定内容の表示要求については、イベント処理部305は事前にAPI−A250を呼び出して設定内容の確認・変更を示すユーザ操作のイベントをフックする必要がある。
例えば、設定内容の確認・変更を示すユーザ操作が、複合機100の起動時に表示部114に最初に表示されるメイン画面内の所定のボタンの押下げであるとする。この場合イベント処理部305は、メイン画面が表示される際に、所定のボタンに対応するオブジェクトのオブジェクト識別子、“onClick”イベント、該イベントが検知された際にコールバックされるべきフックルーチンのアドレスを引数としてAPI−A250を呼び出し、所定のボタンの押下げのイベントをフックする。なお、所定のボタンに対応するオブジェクトのオブジェクト識別子は、後述するアクセス要求部320を介してAPI−B255を呼び出すことにより取得される。また上記アドレスを参照してコールバックされるフックルーチンは、上記所定のボタンの押下げのイベントに対応する処理を行うイベント処理部305である。
イベント処理部305は、状態情報の表示要求を検知すると、後述する画面遷移制御部315に、表示要求される状態情報の種類に応じて、設定内容の表示、エラー内容の表示、及びタスクのステータス表示のいずれかを要求する。
またイベント処理部305は、状態情報の表示要求に応答して所定の画面構成を記述した文書ファイルがブラウザ200により読み込まれると、該文書ファイルの読み込みイベントの通知に応答して、後述する機器情報管理部310に複合機100の現在の状態情報の取得を要求する。
ここで状態情報の表示要求が設定内容の表示要求である場合、対応する所定の文書ファイルはROM106又は外部記憶装置108に格納された設定画面用文書ファイルである。なお、設定画面用文書ファイルは複合機100の機能ごと複数存在してよい。この場合イベント処理部305は、表示要求される設定内容の種類ごとに表示すべき設定画面用文書ファイルの情報を予め有し、画面遷移制御部315に対し、表示すべき設定画面用文書ファイルを指定する。そして、イベント処理部305は機器情報管理部310に、設定画面に表示すべき複合機100に現在設定されている1以上の設定値の取得を要求する。
また状態情報の表示要求がエラー内容の表示要求である場合、対応する所定の文書ファイルはROM106又は外部記憶装置108に格納されたエラー通知画面用文書ファイルである。従って、イベント処理部305は機器情報管理部310に、エラー通知画面に表示すべき複合機100内で発生したエラーのコードや内容の取得を要求する。
また状態情報の表示要求がタスクのステータス表示要求である場合、対応する所定の文書ファイルはROM106又は外部記憶装置108に格納されたステータス表示画面用文書ファイルである。従って、イベント処理部305は機器情報管理部310に、ステータス表示画面に表示すべき複合機100内で処理中のタスクのステータスの取得を要求する。
イベント処理部305はまた、機器情報管理部310により複合機100の現在の状態情報が取得されると、後述するアクセス要求部320に、表示部114に現在表示されている画面内の1以上の所定の画面要素を、取得された状態情報で更新するよう要求する。なお、イベント処理部305は、状態情報の種類に応じて更新すべき1以上の所定の画面要素の情報を予め内部に保持しており、アクセス要求部320へ所定の画面要素のIDを渡す。
イベント処理部305はまた、ユーザにより複合機100に現在設定されている設定内容の変更要求がなされると、該変更要求を示すユーザ操作のイベントの通知に応答して、後述するアクセス要求部320に、表示部114に現在表示されている画面内の1以上の所定の画面要素の値を参照するよう要求する。なお、参照すべき1以上の所定の画面要素の値とは、テキストボックス、ラジオボタン、チェックボックス等の入力フォームに入力されたデータである。イベント処理部305は、通知を受ける変更要求のイベントごとに参照すべき1以上の所定の画面要素の情報を予め内部に保持しており、アクセス要求部320へ所定の画面要素のIDを渡す。
そしてイベント処理部305は、アクセス要求部320による1以上の所定の画面要素の値の参照が成功すると、後述する機器情報管理部310に、所定の画面要素に対応する設定項目の内容を、参照した値に変更するよう要求する。なおイベント処理部305は、通知を受ける変更要求の種類ごとに、変更すべき設定項目の情報を予め内部に保持しているものとする。
画面遷移制御部315は、状態情報の表示要求に応答して、所定の画面構成を記述した文書ファイルを表示するようブラウザ手段に要求する。具体的には、画面遷移制御部315はまず、API−C265を呼び出してウィンドウの新規オープンを要求し、戻り値として新規ウィンドウに割り当てられたオブジェクト識別子を受け取る。
次に画面遷移制御部315は再度API−C265を呼び出し、受け取ったオブジェクトの識別子、所定の画面構成を記述した文書ファイルの保存場所、及び該文書ファイルのブラウザ200による読み込み終了時にコールバックされる“onLoad”イベントの関数(フックルーチン)のアドレスを引数として渡す。
なお、上述したように画面遷移制御部315は状態情報の表示要求をイベント処理部305から受ける。また画面遷移制御部315がAPI−C265に引数として渡す所定の画面構成を記述した文書ファイルの保存場所は、表示要求される状態情報に応じて異なり、設定画面用文書ファイル、エラー通知画面用文書ファイル、及びステータス表示画面用文書ファイルのいずれかの保存場所である。
また上記アドレスを参照してコールバックされるフックルーチンは、所定の画面構成を記述した文書ファイルの読み込みイベントに対応する処理を行うイベント処理部305である。画面遷移制御部315は、API−C265に渡すべき引数の情報を、状態情報の表示要求の種類ごとに内部に保持しておいてもよく、或いはイベント処理部305がこれを保持し、画面遷移制御部315に対し指定するようにしてもよい。
なお上述したように、画面遷移制御部315に引数を指定して呼び出されたAPI−C265は、ブラウザ制御部245に対して指定された文書ファイルの読み込みを要求する。更にAPI−C265は、画面遷移制御部315から受け取ったウィンドウのオブジェクト識別子と、“onLoad”イベントと、フックルーチンのアドレスとを引数としてAPI−A250を呼び出し、指定された文書ファイルの読み込みイベントのイベント管理テーブルへの登録を要求する。従って、所定の画面構成を記述した文書ファイルがブラウザ200により読み込まれると、該読み込みイベントがイベント処理部305に通知され、イベント処理部305は表示要求のあった状態情報に応じた処理を続行できる。
機器情報管理部310は、複合機100のミドルウェア又はデバイスドライバから複合機100内部で発生したエラーのエラー発生通知を受け取る。また、機器情報管理部310は、複合機100が現在処理しているタスクの処理状況を示すステータス報告を受け取る。
通知を受け取るエラーとしては、例えば紙詰まりやトナー切れ等が挙げられる。またステータス報告を受け取るタスクとしては、例えば画像の取り込みやファクシミリの受信が挙げられる。この場合ステータス内容は、全体のタスクに対する処理済のタスクの割合や、
現在実行中の処理内容(例えばファクシミリの受信の場合、ネゴシエーション中、データ受信中、及び受信完了のいずれか)であってよい。上述したように、機器情報管理部310は上記通知を受けるとこれをイベント処理部305に通知する。
機器情報管理部310はまた、ブラウザ200による所定の画面構成を記述した文書ファイルの読み込みに応答して、複合機100の現在の状態情報を取得する。上述したように、所定の画面構成を記述した文書ファイルが設定画面用文書ファイルである場合、機器情報管理部310は、現在の状態情報として設定画面に表示すべき複合機100に現在設定されている設定値を取得する。
また所定の画面構成を記述した文書ファイルがエラー通知画面用文書ファイルである場合、機器情報管理部310は、現在の状態情報としてエラー通知画面に表示すべき複合機100内で発生したエラーのエラーコードやその内容を取得する。
また所定の画面構成を記述した文書ファイルがステータス表示画面用文書ファイルである場合、機器情報管理部310は、現在の状態情報としてステータス表示画面に表示すべき複合機100内で処理中のタスクのステータスを取得する。
なお機器情報管理部310は、上記現在の状態情報の取得を、所定の画面構成を記述した文書ファイルの読み込みイベントの通知を受けたイベント処理部305により要求される。また機器情報管理部310は上記現在の状態情報を、複合機100のミドルウェア又はデバイスドライバから取得する。取得された現在の状態情報は、機器情報管理部310からアクセス要求部320へ渡される。
機器情報管理部310はまた、複合機100に現在設定されている設定内容の変更要求があった場合に、イベント処理部305からの要求に応答して、複合機100に現在設定されている設定内容を変更する。
ユーザによる設定内容の変更要求は、設定画面用文書ファイルを読み込んだブラウザ200を介して行われる。新たに複合機100に設定すべき内容は、後述するアクセス要求部320が設定画面用文書ファイルに対応するDOMツリー上の所定のノードの値を参照することにより取得される。機器情報管理部310は、複合機100に現在設定されている上記所定のノードに対応する設定項目の設定内容を、アクセス要求部320が取得した所定のノードの値に変更する。なお、変更すべき設定項目は、イベント処理部305により指示される。
アクセス要求部320は、イベント処理部305の要求に応答して、所定の画面構成を記述した文書ファイルからブラウザ200によって生成されたDOMツリー上の1以上の所定のノードの値を、機器情報管理部310が取得した複合機100の現在の状態情報で更新するようにブラウザ200に要求する。上述したように、イベント処理部305による更新要求には、表示部114に現在表示されている画面内の1以上の所定の画面要素のID(文字列)が含まれる。
具体的には、アクセス要求部320はまず、指定された1以上の所定の画面要素の各々について、該画面要素のID(文字列)を引数としてAPI−B255を呼び出す。呼び出されたAPI−B255は、受け取ったID(文字列)を引数としてgetElementByIdの呼び出しを行い、返されたオブジェクトのオブジェクト識別子をアクセス要求部320へ戻す。
次にアクセス要求部320は再度API−B255を呼び出し、受け取った各オブジェクトの識別子と、機器情報管理部310が取得した複合機100の現在の状態情報を引数として渡す。呼び出されたAPI−B255は、オブジェクト識別子により識別されるオブジェクトに対し、受け取った状態情報を引数としてsetNodeValueの呼び出しを行う。これにより、表示部114に表示される所定のノードに対応する画面要素の値が複合機100の現在の状態情報で更新される。なお、DOMオブジェクトへのアクセスを要求されたDOM処理部220は、API−B255によりDOM APIが呼び出されていることから要求元は状態表示制御プログラム300であると判定し、アクセス履歴リストを参照することなくアクセスを許可する。
アクセス要求部320はまた、複合機100に現在設定されている設定内容の変更要求があった場合に、設定内容を変更するための画面構成を記述した設定画面用文書ファイルからブラウザ200によって生成されたDOMツリー上の1以上の所定のノードの値の参照をブラウザ200に要求する。なお、上述したように設定内容の変更要求は、イベント処理部305により通知され、該通知には、その値を参照すべき1以上の所定の画面要素のID(文字列)が含まれる。
具体的には、アクセス要求部320はまず、指定された1以上の所定のノードの各々について、該ノードである画面要素のID(文字列)を引数としてAPI−B255を呼び出す。呼び出されたAPI−B255は、受け取ったID(文字列)を引数としてgetElementByIdの呼び出しを行い、返されたオブジェクトのオブジェクト識別子をアクセス要求部320へ戻す。
次にアクセス要求部320は再度API−B255を呼び出し、受け取った各オブジェクトの識別子を引数として渡す。呼び出されたAPI−B255は、オブジェクト識別子により識別されるオブジェクトに対し、getNodeValueの呼び出しを行う。getNodeValueからの戻り値は、API−B255によりそのままアクセス要求部320へ返される。アクセス要求部320はAPI−B255からの戻り値を、イベント処理部305に指示に従って、機器情報管理部310へ渡す。
なお、DOMオブジェクトへのアクセスを要求されたDOM処理部220は、API−B255によりDOM APIが呼び出されていることから要求元は状態表示制御プログラム300であると判定し、アクセス履歴リストを参照することなくアクセスを許可する。
なお上述したように、アクセス要求部320、即ち状態表示制御プログラム300からのDOMツリー上のノードへのアクセス要求は、API−B255より履歴管理部260に通知され、履歴管理部260は、アクセス要求のあったオブジェクトを記録することに留意されたい。
次に図5乃至図15を参照して、ブラウザ200及び状態表示制御プログラム300の動作を説明する。なお以下では、表示要求される複合機100の状態情報が、複合機100に現在設定されている設定の内容である場合を第1実施例、組込み機器内で生じたエラーの内容である場合を第2実施例としてそれぞれ説明する。
(第1実施例)まず図5乃至図11を参照して、表示要求される複合機100の状態情報が、複合機100に現在設定されている設定の内容である場合のブラウザ200及び状態表示制御プログラム300の動作を説明する。
図5(a)は複合機100の起動時に表示部114に最初に表示されるメイン画面の一例を示す。本実施例では複合機はコピー機能とスキャン機能を有するため、メイン画面にはこれら2つの設定ボタン502、504が含まれる。ここでコピー設定ボタン502が押されると、本実施例における複合機100は、図5(a)に示すメイン画面から図5(b)に示すサブ画面へ表示部114の画面を遷移させる。
図5(b)は、コピーに関する各種の設定及び確認を行うための設定画面の一例を示す。図5(b)に示すサブ画面は、用紙サイズ設定ボタン506、部数設定ボタン508、倍率設定ボタン510、及び濃度設定ボタン512の4つのボタンを含む。各ボタンの右側にあるセル514乃至520には、対応する現在の設定内容が表示されている。ここで用紙サイズ設定ボタン506が押されると、本実施例における複合機100は、図5(b)に示すメイン画面から図5(c)に示すサブ画面へ表示部114の画面を遷移させる。
図5(c)は、用紙サイズの設定を行うための設定画面の一例を示す。図5(c)に示すサブ画面は、A4、A3、B4、B5の中から用紙を1つ選択するためのラジオボタン522と、変更を実行するための決定ボタン524、及び変更を中止するための中止ボタン526を含む。
図6は、 図5(b)に示すサブ画面に対応するDOMツリーの一例を示す。また、図7は、図5(c)に示すサブ画面に対応するDOMツリーの一例を示す。
以下では、図5(a)に示すメイン画面が表示部114に表示されてから、図5(b)及び図5(c)に示すサブ画面を介してユーザによりコピー設定に関する設定内容の確認及び変更が行われる場合を具体例として、ブラウザ200及び状態表示制御プログラム300の動作を説明する。
図8は、状態表示制御プログラム300がブラウザによる画面表示を制御するために前処理として行われる、イベントのフック処理の流れの一例を示すフローチャートである。なおブラウザ200が実行するステップと状態表示制御プログラム300が実行するステップとを区別するために、全てのフローチャートの図において、ブラウザ200が実行するステップを点線で囲んだ。処理はステップ800から開始し、イベント処理部305の要求に応答して、アクセス要求部320は、目的オブジェクトのID(文字列)を引数としてAPI−B255を呼び出し、目的オブジェクトのオブジェクト識別子を問い合わせる。
ここで目的オブジェクトとは、表示部114に表示される画面内の画面要素であって、それに対するイベントをフックすべきオブジェクトをいう。例えば、図5(a)乃至図5(c)に示す各画面のクローズボタン、図5(a)乃至図5(b)に示す各設定ボタン502乃至512、図5(c)に示す画面のラジオボタン522、決定ボタン524及び中止ボタン526は全て目的オブジェクトに該当する。
API−B255は、受け取った画面要素のID(文字列)を引数としてgetElementByIdを呼び出すことにより対応するオブジェクトを特定し、該オブジェクトのオブジェクト識別子をアクセス要求部320を介してイベント処理部305へ返す(ステップ805)。これをコピー設定の設定画面を示す図5(b)と、図5(b)の設定画面に対応するDOMツリーを示す図6を参照して説明する。例えば図5(b)に示す画面内の用紙サイズ設定ボタン506についてオブジェクト識別子の問合せがなされたとする。するとAPI−B255は、用紙サイズ設定ボタン506に対応するオブジェクトとして、図6に示すDOMツリー上のINPUTノード625を特定し、そのオブジェクト識別子を返す。
次にイベント処理部305は、取得したオブジェクト識別子、“onClick”イベント、及び該イベントが検知された際にコールバックされるべきフックルーチンのアドレスを引数としてAPI−A250を呼び出し、目的オブジェクトの“onClick”イベントについて、イベントフックルーチンの登録をブラウザ200に要求する(ステップ810)。
API−A250は、引数として受け取った各値を、図3に示すようなイベント管理テーブルに登録する(ステップ815)。そしてフック処理は終了する。なお、図8のフローチャートに示す前処理は、目的オブジェクトを含む画面が表示部114に表示される際にイベント処理部305の要求により行われ、イベント処理部305の要求には、目的オブジェクトのID(文字列)が含まれる。また前処理は、状態表示制御プログラム300がブラウザ200による画面表示を制御するために必要な画面内の全ての目的オブジェクトについて行われる。
図9は、第1ボタン押下げのイベントが発生した際に実行されるイベント処理の流れの一例を示すフローチャートである。ここで第1ボタンとは、前処理においてイベント管理テーブルに登録されたオブジェクトのうち、その“onClick”イベントが表示部114の画面の遷移を引き起こすオブジェクトのボタンをいう。例えば図5(a)や図5(b)に示す画面の各設定ボタン502乃至512が第1ボタンに該当する。
処理はステップ900から開始し、イベント通知部235は、第1ボタンの押下げイベントを検知すると、これをAPI−A250に通知する。API−A250は、イベント管理テーブルから第1ボタンの押下げイベントに対応するフックルーチンのアドレスを読み出し、該アドレスを参照して第1ボタンの押下げイベントを処理するイベント処理部305を呼び出す(ステップ905)。
押下げのイベントの通知を受けたイベント処理部305は、画面遷移制御部315に、第1ボタンに対応する設定画面の表示を要求する(ステップ910)。なお、イベント処理部305は当初より第1ボタンの種類ごとに“onClick”イベントが発生した際に表示すべき設定画面の情報を持っているものとする。例えば第1ボタンが図5(a)に示す画面のコピー設定ボタン502である場合、対応する設定画面は図5(b)に示すサブ画面である。また第1ボタンが図5(b)に示す画面の用紙サイズ設定ボタン506である場合、対応する設定画面は図5(c)に示すサブ画面である。
画面遷移制御部315は、イベント処理部305の要求に応答してAPI−C265を呼び出し、サブウィンドウのオープンを要求する(ステップ915)。呼び出されたAPI−C265は、ブラウザ制御部245に対してサブウィンドウの新規オープンを要求するとともに、オープンされたサブウィンドウにオブジェクト識別子を割り当て、これを画面遷移制御部315に返す(ステップ920)。
続いて画面遷移制御部315は、API−C265より返されたサブウィンドウのオブジェクト識別子、第1ボタンに対応する設定画面の構成を記述した設定画面用文書ファイルの保存場所、及び設定画面用文書ファイルの読み込み終了時に呼び出される“onLoad”イベントのフックルーチンのアドレスを引数として、再度API−C265を呼び出す(ステップ925)。
呼び出されたAPI−C265は、受け取ったオブジェクト識別子、“onLoad”イベント、及びフックルーチンのアドレスを引数としてAPI−A250を更に呼び出し、サブウィンドウに対する設定画面用文書ファイルの“onLoad”イベントについて、イベントフックルーチンの登録を要求する(ステップ930)。API−A250は、API−C265から引数として受け取った各値を、図3に示すようなイベント管理テーブルに登録する(ステップ935)。
API−C265はまた、サブウィンドウのオブジェクト識別子と設定画面用文書ファイルの保存場所とを指定して、ブラウザ制御部245に設定画面用文書ファイルの読み込みを要求する(ステップ940)。ブラウザ制御部245は、オブジェクト識別子により識別されるサブウィンドウに対し、保存場所を参照して設定画面用文書ファイルを読み込み、該文書ファイルが表示部114に表示されるようブラウザ200を制御する(ステップ945)。そして第1ボタン押下げのイベント処理は終了する。
図10は、設定画面用文書ファイルの“onLoad”イベントが発生した際に実行されるイベント処理の流れの一例を示すフローチャートである。なおここでの設定画面用文書ファイルは、ブラウザ200に読み込まれると、例えば図5(b)に示す画面のように、複合機100に現在設定されている設定内容を表示する設定画面用文書ファイルである。
処理はステップ1000から開始し、イベント通知部235は、設定画面用文書ファイルの読み込みイベントを検知すると、これをAPI−A250に通知する。API−A250は、イベント管理テーブルから設定画面用文書ファイルの読み込みイベントに対応するフックルーチンのアドレスを読み出し、該アドレスを参照して設定画面用文書ファイルの読み込みイベントを処理するイベント処理部305を呼び出す(ステップ1005)。
設定画面用文書ファイルの読み込みイベントの通知を受け取ったイベント処理部305は、機器情報管理部310に、複合機100に現在設定されている設定内容を取得するよう要求する(ステップ1010)。この際イベント処理部305は、読み込まれた設定画面用文書ファイルの種類に応じて問い合わせるべき設定項目を指定する。例えば設定画面用文書ファイルに基づいて表示部114に図5(b)に示す設定画面が表示される場合、イベント処理部305は機器情報管理部310に、用紙サイズ、部数、倍率、及び濃度に関して複合機100に現在設定されている設定内容を取得するよう要求する。
イベント処理305の要求を受けた機器情報管理部310は、指定された設定項目について複合機100のミドルウェア又はデバイスドライバから複合機100に現在設定されている設定内容を取得する(ステップ1015)。取得された設定内容は、イベント処理305の指示により機器情報管理部310からアクセス要求部320へ渡される。
アクセス要求部320は、イベント処理部305の要求に応答して、表示部114に表示されている画面内の設定内容を表示すべき画面要素のID(文字列)を引数としてAPI−B255を呼び出し、画面要素に対応するDOMオブジェクトのオブジェクト識別子を問い合わせる(ステップ1020)。API−B255は、受け取った画面要素のID(文字列)を引数としてgetElementByIdを呼び出すことにより上記画面要素に対応するオブジェクトを特定し、該オブジェクトのオブジェクト識別子をアクセス要求部320へ返す(ステップ1025)。なお、設定内容を表示すべき画面要素のID(文字列)はイベント処理部305の要求に含まれ、画面要素のID(文字列)が複数ある場合は、問合せは複数回繰り返される。
上記処理をコピー設定の設定画面を示す図5(b)と、図5(b)の設定画面に対応するDOMツリーを示す図6を参照して説明する。図5(b)に示す設定画面では、セル514乃至520が、設定内容を表示すべき画面要素である。なお、図5(b)に示す設定画面の画面構成を記述した文書ファイルには、各セルに表示されている文字列は記載されていないことに留意されたい。ここで「A4」の文字列が表示されているセル514についてオブジェクト識別子の問合せがなされたとする。するとAPI−B255は、セル514に対応するオブジェクトとして、図6に示すDOMツリー上のテキストノード605を特定し、そのオブジェクト識別子を返す。
図10に戻って、アクセス要求部320は、取得した各オブジェクト識別子と、機器情報管理部310から受け取った各設定内容とを引数として再びAPI−B255を呼び出し、オブジェクト識別子により識別されるDOMツリー上のノードの値の更新を要求する(ステップ1030)。
更新を要求されたAPI−B255は、引数として受け取った各オブジェクト識別により識別されるDOMツリー上の各ノードについて、状態表示制御プログラム300によるアクセス要求があったことを履歴管理部260に通知する(ステップ1035)。通知を受けた履歴管理部260は、その内部に保持するアクセス履歴リストに、通知されたオブジェクト識別子を全て記録する(ステップ1040)。
API−B255はまた、DOM処理部220に対し、オブジェクト識別子により識別されるDOMツリー上の各ノードの値を設定内容で更新するよう要求する(ステップ1045)。上述したように該要求は、オブジェクト識別子ごとに、API−B255がオブジェクト識別子により識別されるオブジェクトに対し、受け取った設定内容を引数としてsetNodeValueの呼び出しを繰り返し行うことによりなされる。
要求を受け取ったDOM処理部220は、要求元に応じて履歴管理部260により維持されるアクセス履歴リストを参照し、アクセスの可否を判断する。具体的には、DOM処理部220は状態表示制御手段300以外のアクセス要求元に対しノードのリストを参照し、アクセス履歴リストに記録されたノードへのアクセス要求である場合はこれを禁止する。
ここでは、DOMツリー上のノードへのアクセス要求がAPI−B255を介してなされていることから、DOM処理部220は要求元が状態表示制御手段300であると判定し、アクセス履歴ノードのリストを参照することなくアクセス要求を許可してアクセス要求の内容を実行する。結果、オブジェクト識別子により識別されるDOMツリー上のノードの値が、対応する設定内容で更新される(ステップ1050)。
図5(b)に示すサブ画面の画面構成を記述した文書ファイルの“onLoad”イベントを例に説明すると、ステップ1050の処理により、当初ブランクであった図5のセル514乃至520に各々「A4」、「1部」、「100%」、「自動」の文字列が表示される。そして“onLoad”イベント処理は終了する。
なお、図10のフローチャートには示していないが、ステップ1010において設定画面用文書ファイルの読み込みイベントの通知を受け取ったイベント処理部305は、例えばステップ1050の処理の後等の適当な位置で、設定画面内の目的オブジェクトについて図8に示すイベントのフック処理を行う。
図11は、第2ボタン押下げのイベントが発生した際に実行されるイベント処理の流れの一例を示すフローチャートである。ここで第2ボタンとは、そのボタンの押し下げ操作が設定内容の変更要求を示すオブジェクトをいう。例えば図5(c)に示す画面の決定ボタン524が第2ボタンに該当する。
処理はステップ1100から開始し、イベント通知部235は、第2ボタンの押下げイベントを検知すると、これをAPI−A250に通知する。API−A250は、イベント管理テーブルから第2ボタンの押下げイベントに対応するフックルーチンのアドレスを読み出し、該アドレスを参照して第2ボタンの押下げイベントを処理するイベント処理部305を呼び出す(ステップ1105)。
第2ボタンの押下げイベントの通知を受けたイベント処理部305は、アクセス要求部320に変更内容の取得を要求する(ステップ1110)。この際イベント処理部305は、アクセス要求部320に対し、値を参照すべき表示部114の画面内の画面要素のID(文字列)を渡す。
アクセス要求部320は、イベント処理部305の要求に応答して、その値を参照すべき画面要素のID(文字列)を引数としてAPI−B255を呼び出し、画面要素に対応するDOMオブジェクトののオブジェクト識別子を問い合わせる(ステップ1115)。API−B255は、受け取った画面要素のID(文字列)を引数としてgetElementByIdを呼び出すことにより上記画面要素に対応するオブジェクトを特定し、該オブジェクトのオブジェクト識別子をアクセス要求部320へ返す(ステップ1120)。なお、変更内容を取得するためにその値を参照すべき画面要素が複数ある場合は、問合せは複数回繰り返される。
続いてアクセス要求部320は、取得した各オブジェクト識別子を引数として再びAPI−B255を呼び出し、オブジェクト識別子により識別されるDOMツリー上のノードの値の参照を要求する(ステップ1125)。
参照を要求されたAPI−B255は、引数として受け取った各オブジェクト識別により識別されるDOMツリー上の各ノードについて、状態表示制御プログラム300によるアクセス要求があったことを履歴管理部260に通知する(ステップ1130)。通知を受けた履歴管理部260は、内部に保持するアクセス履歴リストに、通知されたオブジェクト識別子を全て記録する(ステップ1135)。
API−B255はまた、DOM処理部220に対し、各オブジェクト識別子により識別されるDOMツリー上の各ノードの値の参照を要求する(ステップ1140)。上述したように該要求は、オブジェクト識別子ごとに、API−B255がオブジェクト識別子により識別されるオブジェクトに対し、getNodeValueの呼び出しを繰り返し行うことによりなされる。
要求を受け取ったDOM処理部220は、要求元に応じて履歴管理部260により維持されるアクセス履歴リストを参照し、アクセスの可否を判断する。具体的には、DOM処理部220は状態表示制御手段300以外のアクセス要求元に対しアクセス履歴リストを参照し、アクセス履歴リストに記録されたノードへのアクセス要求である場合はこれを禁止する。
ここでは、DOMツリー上のノードへのアクセス要求がAPI−B255を介してなされていることから、DOM処理部220は要求元が状態表示制御手段300であると判定し、アクセス履歴リストを参照することなくアクセスを許可してアクセス要求の内容を実行する。結果、アクセス要求部320はAPI−B255を介して、変更内容を取得する(ステップ1145)。
ステップ1110乃至ステップ1145までの処理を、コピー設定の設定画面を示す図5(c)と、図5(c)の設定画面に対応するDOMツリーを示す図7を参照して説明する。図5(c)に示す設定画面では、ラジオボタン522が変更内容を示し得る画面要素である。ここで一番上のラジオボタン522についてアクセス要求部320によりオブジェクト識別子の問合せがなされたとする。するとAPI−B255は、一番上のラジオボタン522に対応するオブジェクトとして、図7に示すDOMツリー上のINPUTノード705を特定し、そのオブジェクト識別子を返す。
ここで図7を見るとわかるように、ラジオボタンを利用した設定画面において変更内容を知るには、INPUTノード705ではなくその子ノードである属性ノードの値を調べる必要がある。そこでこのような場合、イベント処理部305はアクセス要求部320に、まずchecked属性ノードの値がtrueであるINPUTノード705を見つけ、次にその子ノードであるvalue属性ノードの値を取得するよう指示する。すると図7に示す例では、最終的にアクセス要求部320は変更内容として「A4」の値を得ることになる。なお、チェックボックスを利用した設定画面も同様にして変更内容を取得できる。
図11に戻って、アクセス要求部320はAPI−B255を介してDOM処理部220から参照結果を受け取り、変更内容を取得する(ステップ1150)。変更内容はイベント処理部305の指示によりアクセス要求部320から機器情報管理部310へ渡される。機器情報管理部310は、イベント処理部305の指示に基づき、複合機100のミドルウェア又はデバイスドライバを介して、現在の設定内容を受け取った変更内容で更新し、設定を変更する(ステップ1155)。そして、第2ボタン押下げイベント処理は終了する。
(第2実施例)次に図12乃至図15を参照して、表示要求される複合機100の状態情報が、複合機100内で発生したエラーの内容である場合のブラウザ200及び状態表示制御プログラム300の動作を説明する。
図12は複合機100内でエラーが発生した際に表示部114に表示されるエラー通知画面の一例を示す。図12に示すエラー通知画面は、エラーの内容としてエラーのコード1200とエラーの対処方法1202とを表示する。
図13は、 図12に示すエラー通知画面に対応するDOMツリーの一例を示す。
図14は、エラーが発生した際に実行されるイベント処理の流れの一例を示すフローチャートである。処理はステップ1200から開始し、機器情報管理部310は、複合機100のミドルウェア又はデバイスドライバからエラー発生の通知を受けると、これをイベント処理部305に伝える。エラー発生の通知を受けたイベント処理部305は、画面遷移制御部315に、エラー通知画面の表示を要求する(ステップ1205)。
画面遷移制御部315は、イベント処理部305の要求に応答してAPI−C265を呼び出し、サブウィンドウのオープンを要求する(ステップ1210)。呼び出されたAPI−C265は、ブラウザ制御部245に対してサブウィンドウの新規オープンを要求するとともに、オープンされたサブウィンドウに識別子を割り当て、これを画面遷移制御部315に返す(ステップ1215)。
次に画面遷移制御部315は、API−C265より返されたサブウィンドウのオブジェクト識別子、エラー通知画面の構成を記述したエラー通知画面用文書ファイルの保存場所、及びエラー通知画面用文書ファイルの読み込み終了時に呼び出される“onLoad”イベントのフックルーチンのアドレスを引数として、再度API−C265を呼び出す(ステップ1220)。
呼び出されたAPI−C265は、受け取ったオブジェクト識別子、“onLoad”イベント、及びフックルーチンのアドレスを引数としてAPI−A250を更に呼び出し、サブウィンドウに対するエラー通知画面用文書ファイルの“onLoad”イベントについて、イベントフックルーチンの登録を要求する(ステップ1225)。API−A250は、API−C265から引数として受け取った各値を、図3に示すようなイベント管理テーブルに登録する(ステップ1230)。
API−C265はまた、サブウィンドウのオブジェクト識別子とエラー通知画面用文書ファイルの保存場所とを指定して、ブラウザ制御部245にエラー通知画面用文書ファイルの読み込みを要求する(ステップ1235)。ブラウザ制御部245は、オブジェクト識別子により識別されるサブウィンドウに対し、保存場所を参照してエラー通知画面用文書ファイルを読み込み、該文書ファイルが表示部114に表示されるようブラウザ200を制御する(ステップ1240)。そしてエラー発生イベント処理は終了する。
図15は、エラー通知画面用文書ファイルの“onLoad”イベントが発生した際に実行されるイベント処理の流れの一例を示すフローチャートである。エラー通知画面用文書ファイルは、ブラウザ200に読み込まれると、例えば図12に示す画面のように、複合機100内で発生したエラーの内容を表示する、文書ファイルである。
処理はステップ1300から開始し、イベント通知部235は、エラー通知画面用文書ファイルの読み込みイベントを検知すると、これをAPI−A250に通知する。API−A250は、イベント管理テーブルからエラー通知画面用文書ファイルの読み込みイベントに対応するフックルーチンのアドレスを読出し、該アドレスを参照してエラー通知画面用文書ファイルの読み込みイベントを処理するイベント処理部305を呼び出す(ステップ1305)。
エラー通知画面用文書ファイルの読み込みイベントの通知を受けとったイベント処理部305は、機器情報管理部310に、複合機100内で発生したエラーの内容を問い合わせる(ステップ1310)。イベント処理305の要求を受けた機器情報管理部310は、複合機100のミドルウェア又はデバイスドライバから、複合機100内で発生したエラーの内容を取得する(ステップ1315)。取得されたエラー内容は、イベント処理305の指示により機器情報管理部310からアクセス要求部320へ渡される。
アクセス要求部320は、イベント処理部305の要求に応答して、表示部114に表示されている画面内のエラー内容を表示すべき画面要素のID(文字列)を引数としてAPI−B255を呼び出し、画面要素に対応するオブジェクトのオブジェクト識別子を問い合わせる(ステップ1320)。API−B255は、受け取った画面要素のID(文字列)を引数としてgetElementByIdを呼び出すことにより上記画面要素に対応するオブジェクトを特定し、該オブジェクトのオブジェクト識別子をアクセス要求部320へ返す(ステップ1325)。なお、エラー内容を表示すべき画面要素のID(文字列)はイベント処理部305の要求に含まれ、エラー内容を表示すべき画面要素のID(文字列)が複数ある場合は、問合せは複数回繰り返される。
上記処理を、エラー通知画面を示す図12と、図12の設定画面に対応するDOMツリーを示す図13を参照して説明する。図12に示すエラー通知画面では、セル1200とセル1202が、エラー内容を表示すべき画面要素である。なお、図12に示すエラー通知画面の画面構成を記述した文書ファイルには、コードと対処の各内容は記載されていないことに留意されたい。ここでエラーコードの文字列が表示されているセル1200についてオブジェクト識別子の問合せがなされたとする。するとAPI−B255は、セル1200に対応するオブジェクトとして、図13に示すDOMツリー上のテキストノード1300を特定し、そのオブジェクト識別子を返す。
図15に戻って、アクセス要求部320は、取得したオブジェクト識別子と、機器情報管理部310から受け取ったエラー内容とを引数として再びAPI−B255を呼び出し、オブジェクト識別子により識別されるDOMツリー上のノードの値の更新を要求する(ステップ1330)。
更新を要求されたAPI−B255は、引数として受け取った各オブジェクト識別により識別されるDOMツリー上の各ノードについて、状態表示制御プログラム300によるアクセス要求があったことを履歴管理部260に通知する(ステップ1335)。通知を受けた履歴管理部260は、内部に保持するアクセス履歴リストに、通知されたオブジェクト識別子を全て記録する(ステップ1340)。
API−B255はまた、DOM処理部220に対し、各オブジェクト識別子により識別されるDOMツリー上の各ノードの値を対応するエラー内容で更新するよう要求する(ステップ1345)。上述したように該要求は、オブジェクト識別子ごとに、API−B255がオブジェクト識別子により識別されるオブジェクトに対し、受け取ったエラー内容を引数としてsetNodeValueの呼び出しを繰り返し行うことによりなされる。
要求を受け取ったDOM処理部220は、要求元に応じて履歴管理部260により維持されるアクセス履歴リストを参照し、アクセスの可否を判断する。具体的には、DOM処理部220は状態表示制御手段300以外のアクセス要求元に対しアクセス履歴リストを参照し、リストに記録されたノードへのアクセス要求である場合はこれを禁止する。
ここでは、DOMツリー上のノードへのアクセス要求がAPI−B255を介してなされていることから、DOM処理部220は要求元が状態表示制御手段300であると判定し、アクセス履歴リストを参照することなくアクセスを許可してアクセス要求の内容を実行する。結果、オブジェクト識別子により識別されるDOMツリー上のノードの値が、対応するエラー内容で更新される(ステップ1350)。
図12に示すエラー通知画面の画面構成を記述した文書ファイルの“onLoad”イベントを例に説明すると、ステップ1350の処理により、当初ブランクであった図12のセル1200及びセル1202に各々「ER0001」、「紙詰まりです。…除いて下さい。」の文字列又は文章が表示される。そして“onLoad”イベント処理は終了する。
なお、図15のフローチャートには示していないが、ステップ1310においてエラー通知画面用文書ファイルの読み込みイベントの通知を受け取ったイベント処理部305は、例えばステップ1350の処理の後等の適当な位置で、エラー通知画面内の目的オブジェクトについて図8に示すのと同様のイベントのフック処理を行う。
なお、表示要求される複合機100の状態情報が、組込み機器が処理しているタスクのステータスの内容である場合のブラウザ200及び状態表示制御プログラム300の動作は、上記説明した表示要求される複合機100の状態情報が、複合機100内で発生したエラーの内容である場合ブラウザ200及び状態表示制御プログラム300の動作と基本的に同じであるため、本明細書では繰り返しを避けるため説明を省略する。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。例えば上記説明した実施例では、DOM処理部220は、状態表示制御プログラム300以外の要求元からのDOMノードへのアクセス要求については、アクセス要求されるノードがアクセス履歴リストにリストされていることを条件にそのアクセス要求を禁止した。しかしながらDOM処理部220は、これに代えて、状態表示制御プログラム300以外の要求元からのDOMノードへのアクセス要求については、アクセス要求されるノードが、過去に更新を目的として状態表示制御プログラム300からアクセスされたノードであることを条件にそのアクセス要求を禁止してもよい。
特許請求の範囲、明細書、および図面中において示した装置、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。

Claims (10)

  1. 組込み機器であって、
    前記組込み機器の画面に構造化文書を表示させるブラウザ手段と、
    前記組込み機器の状態を示す状態情報の前記画面への表示を制御する状態表示制御手段とを含み、
    前記状態表示制御手段は、
    前記状態情報の表示要求に応答して、所定の画面構成を記述した文書ファイルを表示するよう前記ブラウザ手段に要求する画面遷移制御手段と、
    前記ブラウザ手段による前記文書ファイルの読み込みに応答して、前記組込み機器の現在の前記状態情報を取得する機器情報管理手段と、
    前記ブラウザ手段によって前記文書ファイルから生成されたDOM(Document Object Model)ツリー上の1以上の所定のノードの値を、取得した前記状態情報で更新するように、前記ブラウザ手段に要求するアクセス要求手段とを含み、
    前記ブラウザ手段は、
    前記状態表示制御手段からの前記文書ファイルの表示要求に応答して、前記組込み機器の記憶手段から前記文書ファイルを読み込み、該文書ファイルを前記画面に表示するよう制御するブラウザ制御手段と、
    前記状態表示制御手段からの前記1以上の所定のノードのアクセス要求に応答して、該1以上の所定のノードをリストに記録する履歴管理手段と、
    前記DOMツリー上のノードへのアクセス要求に応答して、アクセス要求元に応じて前記リストを参照し、前記リストに記録されたノードへのアクセス要求は前記状態表示制御手段にのみ許可してアクセス要求の内容を実行するDOM処理手段とを含む、
    組込み機器。
  2. 前記状態情報の表示要求は、前記組込み機器に現在設定されている設定内容の表示要求であり、前記所定の画面構成を記述した文書ファイルは、設定内容を確認又は変更するための画面構成を記述した設定画面用文書ファイルである、請求項1に記載の組込み機器。
  3. 前記ブラウザ手段は、前記画面に表示する文書ファイルに対する操作イベントを受信して通知するイベント通知手段を含み、
    前記状態表示制御手段は、前記イベント通知手段からの所定のボタンの押下げイベントの通知に応答して、前記画面遷移制御手段に前記設定内容の表示を要求するイベント処理手段を含む、請求項2に記載の組込み機器。
  4. 前記状態情報の表示要求は、前記組込み機器内で生じたエラーのエラー発生通知に基づくエラー内容の表示要求であり、前記所定の画面構成を記述した文書ファイルは、エラー内容を表示するための画面構成を記述したエラー通知画面用文書ファイルである、請求項1に記載の組込み機器。
  5. 前記機器情報管理手段は、前記組込み機器のミドルウェア又はデバイスドライバから前記エラー発生通知を受け取り、
    前記状態表示制御手段は、前記機器情報管理手段からの前記エラー発生通知の転送に応答して、前記画面遷移制御手段に前記エラー内容の表示を要求するイベント処理手段を含む、請求項4に記載の組込み機器。
  6. 前記状態情報の表示要求は、前記組込み機器が処理しているタスクの処理状況を通知するステータス通知に基づくステータス表示要求であり、前記所定の画面構成を記述した文書ファイルは、前記タスクのステータスを表示するための画面構成を記述したステータス表示画面用文書ファイルである、請求項1に記載の組込み機器。
  7. 前記機器情報管理手段は、前記組込み機器のミドルウェア又はデバイスドライバから前記ステータス通知を受け取り、
    前記状態表示制御手段は、前記機器情報管理手段からの前記ステータス通知の転送に応答して、前記画面遷移制御手段に前記ステータスの表示を要求するイベント処理手段を含む、請求項6に記載の組込み機器。
  8. 前記画面遷移制御手段は、前記文書ファイルの表示を前記ブラウザ手段に要求する際に、前記文書ファイルの読み込みイベントのフックルーチンを前記ブラウザ手段に対して指定し、
    前記ブラウザ手段は、前記文書ファイルの読み込みイベントに関連付けて、指定された前記フックルーチンをテーブルに登録し、前記テーブルを参照して受信したイベントの通知先を決定するイベント通知手段を更に含み、
    前記状態表示制御手段は、前記イベント通知手段からの前記文書ファイルの読み込みイベントの通知に応答して、前記機器情報管理手段に前記組込み機器の現在の前記状態情報の取得を要求するイベント処理手段を含む、請求項1に記載の組み込み機器。
  9. 前記アクセス要求手段は、前記組込み機器に現在設定されている設定内容の変更要求があった場合に、設定内容を変更するための画面構成を記述した設定画面用文書ファイルから前記ブラウザ手段によって生成されたDOMツリー上の1以上の所定のノードの値の参照を前記ブラウザ手段に要求し、前記機器情報管理手段は、前記1以上の所定のノードに対応する前記組込み機器に現在設定されている設定内容を、前記アクセス要求手段が参照した前記所定のノードの値に変更する、請求項1に記載の組み込み機器。
  10. 組込み機器において実行される状態表示制御方法であって、前記組込み機器は、ブラウザと該ブラウザと連動して前記組込み機器の状態の画面表示を制御する状態表示制御プログラムがインストールされており、前記状態表示制御方法は、
    前記組込み機器の状態を示す状態情報の表示要求に応答して、前記ブラウザが前記組込み機器の記憶手段から所定の画面構成を記述した文書ファイルを読み込むステップと、
    前記文書ファイルの読み込みに応答して、前記状態表示制御プログラムが前記組込み機器の現在の前記状態情報を取得するステップと、
    前記ブラウザによって前記文書ファイルから生成されたDOM(Document Object Model)ツリー上の1以上の所定のノードの値を、取得した前記状態情報で更新するように、前記状態表示制御プログラムが前記ブラウザに要求するステップと、
    前記状態表示制御プログラムからの前記1以上の所定のノードのアクセス要求に応答して、前記ブラウザが前記1以上の所定のノードをリストに記録し該リストを前記記憶手段へ記憶するステップと、
    前記DOMツリー上の任意ノードへのアクセス要求に応答して、前記ブラウザが、アクセス要求元に応じて前記記憶手段に記憶される前記リストを参照し、前記リストに記録されたノードへのアクセス要求は前記状態表示制御プログラムにのみ許可してアクセス要求の内容を実行するステップと、
    を含む状態表示制御方法。
JP2009150823A 2009-06-25 2009-06-25 組込み機器およびその状態表示制御方法 Expired - Fee Related JP5159711B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009150823A JP5159711B2 (ja) 2009-06-25 2009-06-25 組込み機器およびその状態表示制御方法
US12/788,234 US8640224B2 (en) 2009-06-25 2010-05-26 Embedded device and state display control
US13/464,124 US8739303B2 (en) 2009-06-25 2012-05-04 Embedded device and state display control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009150823A JP5159711B2 (ja) 2009-06-25 2009-06-25 組込み機器およびその状態表示制御方法

Publications (2)

Publication Number Publication Date
JP2011008490A JP2011008490A (ja) 2011-01-13
JP5159711B2 true JP5159711B2 (ja) 2013-03-13

Family

ID=43382113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009150823A Expired - Fee Related JP5159711B2 (ja) 2009-06-25 2009-06-25 組込み機器およびその状態表示制御方法

Country Status (2)

Country Link
US (2) US8640224B2 (ja)
JP (1) JP5159711B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8429744B1 (en) * 2010-12-15 2013-04-23 Symantec Corporation Systems and methods for detecting malformed arguments in a function by hooking a generic object
US8892635B2 (en) 2011-01-06 2014-11-18 Oracle International Corporation Techniques for detecting inactive browser windows
US9015226B2 (en) * 2011-01-06 2015-04-21 Oracle International Corporation Techniques for detecting new browser windows
US8924934B2 (en) 2011-02-04 2014-12-30 Oracle International Corporation Automated test tool interface
US9424236B2 (en) 2011-04-26 2016-08-23 Oracle International Corporation Filtered Stylesheets
JP6044148B2 (ja) * 2011-08-03 2016-12-14 株式会社リコー 通信制御装置、情報管理システム、情報管理装置、通信制御プログラム、及び情報管理プログラム
US20130067314A1 (en) * 2011-09-10 2013-03-14 Microsoft Corporation Batch Document Formatting and Layout on Display Refresh
US9250872B2 (en) 2011-10-19 2016-02-02 Oracle International Corporation Task flow interface in a popup region
US20130262977A1 (en) * 2012-03-30 2013-10-03 International Business Machines Corporation Controlling Browser Preferences with a Rich Internet Application
CN102955854B (zh) * 2012-11-06 2015-11-25 搜游网络科技(北京)有限公司 一种基于html5协议的网页展现方法及装置
US10691299B2 (en) 2014-09-25 2020-06-23 Oracle International Corporation Display of hierarchical datasets using high-water mark scrolling
US10366234B2 (en) * 2016-09-16 2019-07-30 Rapid7, Inc. Identifying web shell applications through file analysis
JP7170453B2 (ja) * 2018-08-06 2022-11-14 キヤノン株式会社 システム、印刷装置、システムの制御方法
JP7159027B2 (ja) * 2018-12-10 2022-10-24 株式会社Access ユーザーインタフェース提供装置、ユーザーインタフェース提供方法、プログラム及び組み込み機器
JP2021100163A (ja) * 2019-12-20 2021-07-01 東芝テック株式会社 画像処理装置、及び画像処理装置の制御方法
JP7381895B2 (ja) * 2020-04-15 2023-11-16 富士通株式会社 イベントストリーム処理システム、イベントムストリーム処理方法及びイベントストリーム処理プログラム
US11762940B2 (en) * 2020-09-12 2023-09-19 HCL America Inc. Component level data management and state change detection in web applications for data loss protection

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176563B2 (en) * 2000-11-13 2012-05-08 DigitalDoors, Inc. Data security system and method with editor
US7028306B2 (en) * 2000-12-04 2006-04-11 International Business Machines Corporation Systems and methods for implementing modular DOM (Document Object Model)-based multi-modal browsers
US6745208B2 (en) * 2001-05-31 2004-06-01 International Business Machines Corporation Method and apparatus for synchronizing an XML document with its object model
US7058886B1 (en) * 2001-12-18 2006-06-06 Open Invention Network Method and apparatus for declarative error handling and presentation
CN101052936A (zh) * 2004-08-02 2007-10-10 佳思腾软件公司 用于在标记语言环境中将事件指派给动作的文档处理和管理方法
JPWO2006051970A1 (ja) * 2004-11-12 2008-05-29 株式会社ジャストシステム データ処理装置、文書処理装置、データ中継装置、データ処理方法およびデータ中継方法
JP4140916B2 (ja) 2005-12-22 2008-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション Webページにおける状態遷移を解析する方法
JP2007241932A (ja) * 2006-03-13 2007-09-20 Omron Corp リモートモニタリングシステム
JP2008009575A (ja) * 2006-06-28 2008-01-17 Meidensha Corp Web監視システム及びWeb監視方法
JP4395178B2 (ja) * 2007-05-29 2010-01-06 インターナショナル・ビジネス・マシーンズ・コーポレーション コンテンツ処理システム、方法及びプログラム
US8375086B2 (en) * 2007-05-31 2013-02-12 International Business Machines Corporation Shared state manager and system and method for collaboration
US8316358B2 (en) * 2007-05-31 2012-11-20 Research In Motion Limited Method and apparatus for processing XML for display on a mobile device
WO2009043033A2 (en) * 2007-09-28 2009-04-02 Xcerion Aktiebolag Network operating system
US9141587B2 (en) * 2008-05-19 2015-09-22 Canon Kabushiki Kaisha Print control method and print control apparatus for controlling printing of structured document
US9639626B2 (en) * 2009-04-09 2017-05-02 International Business Machines Corporation Web-browser based state repository

Also Published As

Publication number Publication date
JP2011008490A (ja) 2011-01-13
US8739303B2 (en) 2014-05-27
US8640224B2 (en) 2014-01-28
US20100332920A1 (en) 2010-12-30
US20120216295A1 (en) 2012-08-23

Similar Documents

Publication Publication Date Title
JP5159711B2 (ja) 組込み機器およびその状態表示制御方法
JP4732155B2 (ja) 画像処理装置及び制御方法
JP5318907B2 (ja) 複合機、複合機制御システム、複合機の制御方法、プログラムおよびその記録媒体
US10044720B2 (en) Mashup method, computer-readable recording medium, and terminal
JP6295563B2 (ja) 情報処理システム、機器、情報処理方法、及び情報処理プログラム
EP2393275B1 (en) Information processing system, information processing apparatus, control method thereof, and program
US8488170B2 (en) Print job management apparatus, system, and method
US20130219260A1 (en) Instrument, information processing system, and information processing method
JP5819203B2 (ja) 多機能装置に接続する大容量記憶装置にネットワークアクセスを可能にするシステム及び方法
JP2004303218A (ja) 情報提供装置及び情報表示装置
US9350719B2 (en) Device, information processing terminal, information processing system, display control method, and recording medium
JP4934743B2 (ja) 画像処理装置及び制御方法
US9179017B2 (en) Image processing apparatus and method for processing an image which utilizes a first mode for instructions from the image processing apparatus and a second mode for instructions received from an external apparatus and for instructions from the image processing apparatus
US20090300478A1 (en) Image forming apparatus, information processing method and program
JP2015108939A (ja) 情報処理システム、情報処理装置、情報処理方法及びプログラム
JP5464038B2 (ja) 情報処理装置、画像形成装置、情報処理方法、プログラムおよび記録媒体
US20160227056A1 (en) Information processing apparatus, and method
JP2007058632A (ja) 情報処理装置および情報処理プログラム
JP2012230514A (ja) 画像形成装置およびコンピュータプログラム
JP6399521B2 (ja) 情報処理装置および画像形成装置
US9239818B2 (en) Image forming device for serving a web service and method thereof
JP6273798B2 (ja) アプリケーションシステム、画像形成装置、ウェブサーバ、アプリケーション起動方法、およびコンピュータプログラム
US20230195397A1 (en) Image processing device, system, and method of controlling image processing device
JP7073936B2 (ja) 画像処理装置、画像処理システム、電子機器、画像処理方法及びプログラム
JP2013016077A (ja) 情報処理装置、プログラム、及び印刷システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121025

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121211

R150 Certificate of patent or registration of utility model

Ref document number: 5159711

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151221

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees