(57)【要約】【課題】  本発明の課題は、着脱自在な記憶媒体に記憶されたオプションアプリケーションが有効な場合にのみＷｅｂサービスを提供するＷｅｂサーバ機能を有する組み込み機器を提供することを目的とする。【解決手段】  本発明の課題は、機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器において、アクセス要求に応じて、前記オプションアプリケーションへの設定情報に対するアクセスを実行するアクセス実行手段と、前記オプションアプリケーションの存在有無を監視する監視手段と、前記アクセス要求を受信した際に、前記監視手段によって前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否して前記アクセス実行手段によるアクセスを行わないようにする受付拒否手段とを有するＷｅｂサーバ機能付き組み込み機器によって達成される。【選択図】  図５
2005165750.tif 000002
【特許請求の範囲】
【請求項１】
機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器において、
アクセス要求に応じて、前記オプションアプリケーションへの設定情報に対するアクセスを実行するアクセス実行手段と、
前記オプションアプリケーションの存在有無を監視する監視手段と、
前記アクセス要求を受信した際に、前記監視手段によって前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否して前記アクセス実行手段による前記オプションアプリケーションへのアクセスを行わないようにする受付拒否手段とを有することを特徴とするＷｅｂサーバ機能を有する組み込み機器。
【請求項２】
前記アクセス実行手段による実行結果を示すＷｅｂページを生成して、前記アクセス要求元に前記Ｗｅｂページを提供するＷｅｂページ提供手段を有し、
前記アクセス実行手段は、前記オプションアプリケーションへのアクセスを、前記組み込み機器に常駐するＷｅｂアプリケーションへのアクセスと共通に処理し、上記Ｗｅｂページ提供手段によって前記オプションアプリケーションへの実行結果を示すＷｅｂページを生成することを特徴とする請求項１記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項３】
前記アクセス実行手段と前記オプションアプリケーションとで共有され、かつ、前記設定情報を保持する設定情報保持手段を前記組み込み機器内部に有することを特徴とする請求項２記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項４】
前記アクセス実行手段は、前記アクセスが前記設定情報の参照を指示する場合、前記設定情報保持手段に保持されている該設定情報を読み出す読出実行手段を有することを特徴とする請求項１乃至３のいずれか一項記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項５】
前記アクセス実行手段は、前記アクセスが前記設定情報の設定を指示する場合、前記設定情報保持手段に該設定情報を書き込む書込実行手段を有することを特徴とする請求項１乃至４のいずれか一項記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項６】
前記アクセス要求を送信した要求元にエラー応答を行うエラー応答手段を有し、
前記受付拒否手段は、前記アクセス要求の受け付けを拒否する場合、前記エラー応答手段を実行することを特徴とする請求項１乃至５のいずれか一項記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項７】
前記エラー応答は、前記アクセス要求に対応するＷｅｂページが存在しないことを通知する応答であることを特徴とする請求項６記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項８】
前記監視手段による監視結果として、前記アクセス要求で指定されるＵＲＬと、前記アクセス実行手段に備えられた各実行手段を実行するための処理関数とを対応させたテーブルを管理するテーブル管理手段と、
前記テーブル管理手段で管理される前記テーブルから前記アクセス要求で指定されるＵＲＬを検索することによって、前記オプションアプリケーションの存在を判断する存在判断手段とを有し、
前記監視手段は、前記オプションアプリケーションが存在する場合、前記ＵＲＬと前記処理関数とを対応させた情報を前記テーブルに保持させ、前記オプションアプリケーションが存在しない場合、前記ＵＲＬと前記処理関数とを対応させた情報を前記テーブルから削除するようにし、
前記受付拒否手段は、上記存在判断手段によって、前記オプションアプリケーションが存在しないと判断された場合に実行されることを特徴とする請求項３乃至７のいずれか一項記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項９】
上記存在判断手段によって前記オプションアプリケーションが存在すると判断された場合に、前記ＵＲＬと対応する前記処理関数を実行することによって、前記アクセス要求を分配する分配手段を有することを特徴とする請求項８記載のＷｅｂサーバ機能を有する組み込み機器。
【請求項１０】
機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器が、
前記オプションアプリケーションの存在有無を監視する監視手順と、
前記アクセス要求を受信した際に、前記監視手順によって前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否して前記オプションアプリケーションへの設定情報に対するアクセスを行わないようにする受付拒否手順とを実行するオプションアプリケーション実行方法。
【請求項１１】
機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器に、
前記オプションアプリケーションの存在有無を監視する監視手順と、
前記アクセス要求を受信した際に、前記監視手順によって前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否して前記オプションアプリケーションへの設定情報に対するアクセスを行わないようにする受付拒否手順とを実行させるコンピュータ実行可能なプログラム。
【請求項１２】
機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器に、
前記オプションアプリケーションの存在有無を監視する監視手順と、
前記アクセス要求を受信した際に、前記監視手順によって前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否して前記オプションアプリケーションへの設定情報に対するアクセスを行わないようにする受付拒否手順とを実行させプログラムが記憶されたコンピュータ読み取り可能な記憶媒体。
【請求項１３】
ネットワークを介して、機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器と、前記オプションアプリケーションへアクセスするユーザ端末とによって構成されるシステムにおいて、
前記組み込み機器は、
前記オプションアプリケーションの存在有無を監視し、
前記ユーザ端末から送信された前記アクセス要求を受信した際に、前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否して前記オプションアプリケーションへの設定情報に対するアクセスを行わないようにし、
前記アクセス要求が受け付けられなかったことを示す情報を前記ユーザ端末に送信することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、着脱自在な記憶媒体に記憶されたオプションアプリケーションが有効な場合にのみＷｅｂサービスを提供するＷｅｂサーバ機能を有する組み込み機器に関する。
【背景技術】
【０００２】
近年、ＦＡＸ、コピー機、プリンタ等の画像形成装置が、ネットワークを介して情報の提供又は処理の実行を行うようになってきた。
【０００３】
例えば、ユーザは、端末のＷｅｂブラウザからＨＴＴＰリクエストを送信し、ＦＡＸ機能を有する画像形成装置に対して、ファクシミリ送信機能を作動させることができるようになった（例えば、特許文献１）。
【０００４】
また、システムが稼動状態においてもアダプタを着脱でき、しかもアダプタの着脱に応じたシステム構成の再構成化を自動的に行えるシステムを提供することができるようになった（例えば、特許文献２）。
【特許文献１】特開平１０−１７３８９０号公報
【特許文献２】特開平１０−２６０９２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、任意のタイミングで着脱可能な記憶媒体に記憶されたオプションアプリケーションによってＷｅｂサービスを提供可能とするＷｅｂサーバ機能を有する画像形成装置では、例えば、画像形成装置が稼動中に記憶媒体が取り外され、オプションアプリケーションが無効状態であっても、オプションアプリケーションの設定情報自体が画像形成装置内（オンボード）の不揮発性メモリで保存されているため、その設定情報の参照又は設定ができてしまうといった問題があった。
【０００６】
情報処理装置以外の例えば画像形成装置のように、ＯＳ及びアプリケーションを実装した組み込み機器では、その仕組みが情報処理装置とは異なっている。
【０００７】
例えば、任意のタイミングで取り付け、取り外しができるような装置のとして、ＵＳＢ等のプラグアンドプレイに対応した情報処理装置があるが、情報処理装置において管理プログラム（ドライバ）が動作しており、着脱時には、そのドライバがＯＳに対して通知を出して、接続処理や終了処理を行うようになっている。
【０００８】
画像形成装置において、情報処理装置にＵＳＢによって接続されるＵＳＢ機器と同様の意味をもつものとしてＳＤカードがある。画像形成装置において、ＳＤカードの有無は、ドライバが検知するが、その中に保存されているアプリケーションの有無までは検知することができない。
【０００９】
ＵＳＢ機器の場合、情報処理装置側ではなく設定情報をＵＳＢ機器側で保存するため、ＵＳＢ機器が情報処理装置に接続されていない場合、設定の変更をすることができないが、画像形成装置の場合、設定情報が装置内の不揮発性メモリに保存されているため、ＳＤカードが接続されていない場合であっても、設定の変更が可能となってしまう。
【００１０】
上記特許文献１及び特許文献２では、このような課題及び解決手法について記載していない。
【００１１】
上記従来の問題点に鑑みて、本発明は、着脱自在な記憶媒体に記憶されたオプションアプリケーションを監視してその有効又は無効状態をチェックし、無効状態の場合には、オプションアプリケーションの設定情報に関するアクセスを拒否するＷｅｂサーバ機能を有する組み込み機器を提供する。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、本発明は、請求項１に記載されるように、機器の稼動中にオプションアプリケーションを記憶した記憶媒体を着脱自在とすることによって該オプションアプリケーションの動作を有効又は無効とするプラグアンドプレイ機能を備えたＷｅｂサーバ機能を有する組み込み機器において、アクセス要求に応じて、前記オプションアプリケーションへの設定情報に対するアクセスを実行するアクセス実行手段と、前記オプションアプリケーションの存在有無を監視する監視手段と、前記アクセス要求を受信した際に、前記監視手段によって前記オプションアプリケーションが存在しないと判断されている場合、該アクセス要求の受け付けを拒否し、前記アクセス実行手段による前記オプションアプリケーションへのアクセスを行わないようにする受付拒否手段とを有するように構成される。
【００１３】
このようなＷｅｂサーバ機能を有する組み込み機器では、オプションアプリケーションが存在しない場合、アクセス（参照及び設定）を拒否することができる。
【００１４】
また、本発明は、請求項２に記載されるように、前記アクセス実行手段による実行結果を示すＷｅｂページを生成して、前記アクセス要求元に前記Ｗｅｂページを提供するＷｅｂページ提供手段を有し、前記アクセス実行手段は、前記オプションアプリケーションへのアクセスを、前記組み込み機器に常駐するＷｅｂアプリケーションへのアクセスと共通に処理し、上記Ｗｅｂページ提供手段によって前記オプションアプリケーションへの実行結果を示すＷｅｂページを生成するように構成される。
【００１５】
このようなＷｅｂサーバ機能を有する組み込み機器では、オプションアプリケーションへのアクセス（参照及び設定）と、そのアクセスによる実行結果を示すＷｅｂページの提供とが、組み込み機器に常駐するＷｅｂアプリケーションに対する同様の処理によって行われる。
【００１６】
また、本発明は、請求項３に記載されるように、前記アクセス実行手段と前記オプションアプリケーションとで共有され、かつ、前記設定情報を保持する設定情報保持手段を前記組み込み機器内部に有するように構成することができる。
【００１７】
このようなＷｅｂサーバ機能を有する組み込み機器では、オプションアプリケーションに関する設定情報が機器内部に保持される。
【００１８】
更に、本発明は、請求項４に記載されるように、前記アクセス実行手段は、前記アクセスが前記設定情報の参照を指示する場合、前記設定情報保持手段に保持されている該設定情報を読み出す読出実行手段を有するように構成することができる。
【００１９】
このようなＷｅｂサーバ機能を有する組み込み機器では、受付拒否手段によって、設定情報の参照を拒否することができる。
【００２０】
また、本発明は、請求項５に記載されるように、前記アクセス実行手段は、前記アクセスが前記設定情報の設定を指示する場合、前記設定情報保持手段に該設定情報を書き込む書込実行手段を有するように構成することができる。
【００２１】
このようなＷｅｂサーバ機能を有する組み込み機器では、受付拒否手段によって、設定情報の設定を拒否することができる。
【００２２】
更に、本発明は、請求項６に記載されるように、前記アクセス要求を送信した要求元にエラー応答を行うエラー応答手段を有し、前記受付拒否手段は、前記アクセス要求の受け付けを拒否する場合、前記エラー応答手段を実行するように構成することができる。
【００２３】
このようなＷｅｂサーバ機能を有する組み込み機器では、アクセス要求が受け付けられなかった場合、エラー応答することができる。
【００２４】
また、本発明は、請求項７に記載されるように、前記エラー応答は、前記アクセス要求に対応するＷｅｂページが存在しないことを通知する応答であるように構成することができる。
【００２５】
このようなＷｅｂサーバ機能を有する組み込み機器では、エラー応答によって、Ｗｅｂページが存在しないことを通知することができる。
【００２６】
更に、本発明は、請求項８に記載されるように、前記監視手段による監視結果として、前記アクセス要求で指定されるＵＲＬと、前記アクセス実行手段に備えられた各実行手段を実行するための処理関数とを対応させたテーブルを管理するテーブル管理手段と、前記テーブル管理手段で管理される前記テーブルから前記アクセス要求で指定されるＵＲＬを検索することによって、前記オプションアプリケーションの存在を判断する存在判断手段とを有し、前記監視手段は、前記オプションアプリケーションが存在する場合、前記ＵＲＬと前記処理関数とを対応させた情報を前記テーブルに保持させ、前記オプションアプリケーションが存在しない場合、前記ＵＲＬと前記処理関数とを対応させた情報を前記テーブルから削除するようにし、前記受付拒否手段は、上記存在判断手段によって、前記オプションアプリケーションが存在しないと判断された場合に実行されるように構成することができる。
【００２７】
このようなＷｅｂサーバ機能を有する組み込み機器では、オプションアプリケーションの有効／無効は，ＵＲＬと処理関数とを対応させたテーブルへの追加／削除によって行う。
【００２８】
また、本発明は、請求項９に記載されるように、上記存在判断手段によって前記オプションアプリケーションが存在すると判断された場合に、前記ＵＲＬと対応する前記処理関数を実行することによって、前記アクセス要求を分配する分配手段を有するように構成することができる。
【００２９】
このようなＷｅｂサーバ機能を有する組み込み機器では、オプションアプリケーションが存在すると判断された場合にアクセス要求（ＨＴＴＰリクエスト）を分配する。
【００３０】
上記課題を解決するための手段として、本発明は、上記組み込み機器での処理をコンピュータに行なわせるためのオプションアプリケーション実行方法、及び、該処理をコンピュータに実行させるためのプログラム及び該プログラムを記憶した記憶媒体、並びに、上記組み込み機器とユーザ端末とによって構成されるシステムとすることもできる。
【発明の効果】
【００３１】
本願発明によれば、着脱自在の記憶媒体に記憶されたオプションアプリケーションを常に監視し、その有効又は無効状態をチェックすることにより、オプションアプリケーションが有効の場合のみリクエストを処理関数に振り分けるように制御することができる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明の実施の形態を図面に基づいて説明する。
【００３３】
本発明の一実施例に係る画像形成装置は、組み込み機器としてプリンタ、コピー、ファクシミリ、スキャナ等の各装置の機能を一つの筐体内に収納し、複数のＷｅｂアプリケーションによって画像形成に関する情報を提供することが可能な装置である。そのような画像形成装置を用いて構成される画像処理システムは、例えば、図１に示すようなシステム構成を成す。
【００３４】
図１は、本発明の一実施例にかかる画像処理システムの構成例を示す図である。図１において、画像処理システム１０００は、画像形成装置１に対し、複数のＨＴＴＰ（HyperText Transfer Protocol）クライアント９等がＬＡＮ（Local Area Network）、イントラネット、又はインターネット等のネットワーク１０を介して接続されている。
【００３５】
画像形成装置１は、ＨＴＴＰクライアント９からの要求に応じて文書データの印刷や、ファックス送信などの処理を実行する。また、画像形成装置１は、ＨＴＴＰクライアント９からのＨＴＴＰリクエストに応じて、当該ＨＴＴＰリクエストにおいて要求された情報を表示するＷｅｂページをＨＴＴＰクライアント９に対して送信する。例えば、ＨＴＴＰクライアント９のユーザがＷｅｂブラウザから画像形成装置１のステータス情報を要求した場合は、画像形成装置１は、ステータス情報を格納したＨＴＭＬ（HyperText Markup Language）データをＨＴＴＰクライアント９に送信する。なお、ＨＴＴＰクライアント９は、ユーザが直接利用するＰＣ（Personal Computer）、ＰＤＡ（Personal Digital(Data) Assistants）、または携帯電話等の端末であり、画像形成装置１から送信されるＷｅｂページを表示するＷｅｂブラウザを備えている。
【００３６】
図２は、本発明の一実施例にかかる画像形成装置の機能構成図である。
【００３７】
図２において、画像形成装置１は、アプリケーション層２とプラットフォーム層４とエンジン部８とを含む。インタフェース３はアプリケーション層２に対するプラットフォーム層４の提供するインタフェース（ＡＰＩ）であり、インタフェース７はプラットフォーム層４とエンジン部８との間のインタフェース（エンジンＩ／Ｆ）である。
【００３８】
アプリケーション層２は画像形成装置１における個別の処理を行うソフトウェア群であり、コピー用のアプリケーションであるコピーアプリケーション２ａと、ファックス用のアプリケーションであるファックスアプリケーション２ｂと、プリンタ用のアプリケーションであるプリンタアプリケーション２ｃと、ネットワークを介してファイルのやりとりを行うネットファイル用のアプリケーションであるネットファイルアプリケーション２ｄとを含む。
【００３９】
また、Ｗｅｂアプリケーション２０は、予め画像形成装置１に実装された（オンボードの）ＨＴＴＰプロトコルによるＷｅｂサービスを行うアプリケーション群であり、ブラウザを使って機器の状態を見たり、機器のネットワーク設定等をすることができるＷｅｂアプリケーションとしてのｗｅｂｓｙｓ２０ａと、ネットファイルアプリケーション２ｄの機能を使い、Ｗｅｂブラウザを使って文書の引き取りおよび文書管理を行うＷｅｂアプリケーションとしてのｗｅｂｄｏｃｂｏｘ２０ｂと、プリンタのジョブ履歴（スプールの状態）等を表示するＷｅｂアプリケーションとしてのＧＰＳ−ｗｅｂ２０ｃと、ファックスの初期設定やファックスの通信管理レポート（通信履歴）を表形式で見ることのできるＷｅｂアプリケーションとしてのＦａｘ−ｗｅｂ２０ｄとを含む。
【００４０】
更に、オプションアプリケーション２００は、Ｗｅｂアプリケーション２０と同様に、ＨＴＴＰプロトコルによるＷｅｂサービスを行うアプリケーションであるが、例えば、ＳＤ（Secure Digital memory）カード等のメモリカードの装着によって提供されるＳＤカードに格納された少なくとも１つのアプリケーションを含む。
【００４１】
なお、図では省略してあるが、アプリケーションとインタフェース３の間にはアプリケーションに対して共通的な機能を提供しソフトウェア開発を容易にするためのライブラリ（プラットフォーム）が適宜に設けられる。
【００４２】
一方、プラットフォーム層４はアプリケーション層２のアプリケーションに対してインタフェース３を介して共通的なサービス機能を提供するソフトウェア群であり、サービス層５とＯＳ層６に分かれる。サービス層５には、アプリケーション管理、操作部制御、システム画面表示、ＬＥＤ表示、リソース管理、および割り込み制御等の複数の機能を有するＳＣＳ（System Control Service）５ａと、ファックス機能のＡＰＩを提供するＦＣＳ（FAX Control Service）５ｂと、エンジン部の制御を行うＥＣＳ(Engine Control Service)５ｃと、メモリ制御を行うＭＣＳ（Memory Control Service）５ｄと、オペレータ（操作者）とのインタフェースとなる操作部（オペレーションパネル）の制御を行うＯＣＳ（Operation panel Control Service）５ｅと、ネットワーク入出力を必要とするアプリケーションに対して共通に利用できるサービスを提供するＮＣＳ（Network Control Service）５ｆとが含まれる。ＯＳ層６にはＯＳ（ＬＰＵＸ）６１が含まれる。
【００４３】
一方、エンジン部８には、プロッタ８１、スキャナ８２、その他ハードウェアリソース８３等のエンジンと、これらのエンジンを制御するエンジン制御ボード８４とが含まれる。
【００４４】
図３は、画像形成装置のハードウェア構成を示すブロック図である。
【００４５】
図３において、画像形成装置１は、画像形成装置における主たる制御動作を行うコントローラ１０１にオペレーションパネル１１３とファックスコントロールユニット１１４とプロッタ８１とスキャナ８２とその他ハードウェアリソース８３とが接続されて構成されている。
【００４６】
コントローラ１０１は、画像処理用途向けのＩＣであるＡＳＩＣ１０２にブリッジとしてのＮＢ１０５を介して一般制御用のＩＣであるＣＰＵ１０６が接続され、ＮＢ１０５のバス（ＰＣＩ  ＢＵＳ）に、周辺デバイス等との接続を行うブリッジであるＳＢ１０８と、ネットワーク通信を制御するＮＩＣ１０９と、ＵＳＢ（Universal Serial Bus）インタフェースを提供するＵＳＢ１１０と、ＩＥＥＥ１３９４インタフェースを提供するＩＥＥＥ１３９４１１１と、セントロニクスインタフェースを提供するセントロニクス１１２と、オプションアプリケーション２００の格納されたＳＤカード等のメモリカード１１６との間でプログラムおよびデータの入出力を行うメモリカードインタフェース１１５とが接続され、ＡＳＩＣ１０２に記憶装置としてのＭＥＭ−Ｃ１０３とＨＤＤ１０４が接続され、ＮＢ１０５に記憶装置としてのＭＥＭ−Ｐ１０７が接続されて構成されている。なお、メモリカードインタフェース１１５はＵＳＢ１１０の機能の一部または全部を利用するものとしてもよい。
【００４７】
図４は、Ｗｅｂアプリケーションのモジュール構成図を示したものである。
【００４８】
図４において、Ｗｅｂアプリケーション２０のＷｅｂｓｙｓ２０ａは、Ｗｅｂブラウザ等のＨＴＴＰクライアント９からネットワーク１０を介して受け付けたＨＴＴＰリクエストの振り分けおよびＷｅｂアプリケーションでの処理結果（ＨＴＭＬ，ＸＭＬ，ＴＥＸＴ）の返送を行うｈｔｔｐｄ（HyperText Transfer Protocol Daemon）５１（図２のＮＣＳ５ｆの機能の一部）に接続されており、内部には、各種の共通機能を提供するＷｅｂアプリケーション開発用のフレームワークであるＷｅｂアプリライブラリ２２およびＷｅｂページライブラリ２３と、Ｗｅｂページの操作を行うＷｅｂページハンドラ２４と、Ｗｅｂページの表示に関する具体的処理を行うＷｅｂページファンクション２５と、処理結果データをＸＭＬによって記述することによってデータ変換をしてシリアライズするタイプライブラリ２６と、ＸＭＬの解釈及び記述を行うＸＭＬ(eXtensible Markup Language)ライブラリ２７と、ＸＭＬで記述された処理結果をＨＴＭＬの記述に変換するＸＳＬＴ（XSL Transformations）プロセッサ２８とを含んでいる。
【００４９】
ここで、Ｗｅｂページハンドラ２４およびＷｅｂページファンクション２５はＷｅｂページを実現する処理関数を構成するものである。また、Ｗｅｂページファンクション２５は処理の実行に際し、インタフェース３を介してＳＣＳ５ａ、ＮＣＳ５ｆ等と通信を行うようになっている。
【００５０】
また、タイプライブラリ２６においてシリアライズするとは、Ｗｅｂページファンクション２５から通知された処理結果をＸＭＬによって記述することである。
【００５１】
オプションアプリケーション２００は、ＳＤカード等の外部記憶媒体としてのメモリカード１１６に保存されるＷｅｂアプリケーションであって、画像形成装置１に標準搭載されないで別売りのオプションとして提供され、そのオプションアプリケーション２００の設定情報が、Ｗｅｂサービスとして提供される。このようにして提供されるオプションアプリケーション２００として、例えば、ＢＭＬｉｎｋＳの機能を提供するアプリケーションがある。ＢＭＬｉｎｋＳとは、ネットワーク上に存在するプリンタ、スキャナ、ストレージ、ＦＡＸ送信及び受信の少なくともいずれか１つの機能を有する１つ以上のＯＡ機器に対して、ジョブ制御手順、ステータス参照等の共通のインターフェースプロトコルを規定する標準仕様であり、例えば、ネットワーク上の利用可能なＯＡ機器を検索するディスカバリ（Discovery）機能を有する。
【００５２】
以下に、オプションアプリケーション２００を含むＷｅｂアプリケーションの設定情報の参照（読み出し）をＷｅｂサービスとして提供する処理に関する機能構成について図５で説明する。
【００５３】
図５は、設定情報の参照をＷｅｂサービスとして提供する処理に関する機能構成を示す図である。図５において、メモリカード１１６が装着された画像形成装置１が示される。
【００５４】
オプションアプリケーション２００が保存されているメモリカード１１６は、任意のタイミングで着脱可能であって、画像形成装置１が稼動中に装着されると電気的に接続し、画像形成装置１から電源供給を受けて、オプションアプリケーション２００を自動的に起動する。通常、オプションアプリケーション２００は、少ない数のＷｅｂページしか提供する必要がないため、他のＷｅｂアプリケーション（例えば、ｗｅｂｓｙｓ２０ａ）が、要求される処理の振り分け及びＷｅｂページの表示等に関する処理を行っている。オプションアプリケーション２００は、処理関数そのものである。
【００５５】
図５において、オプションアプリケーション２００の設定情報の参照をＷｅｂサービスとして提供する処理を実現するために必要な機能構成として、画像形成装置１のｗｅｂｓｙｓ２０ａは、主に、Ｗｅｂページ管理モジュール２１と、Ｗｅｂアプリライブラリ２２と、Ｗｅｂページハンドラ２４と、Ｗｅｂページファンクション２０aとを有する。
【００５６】
Ｗｅｂページ管理モジュール２１は、画像形成装置１の起動時、及び、所定間隔ごとに、予めオプションアプリケーション２００が設定されたテーブルを参照して、メモリカード１１６に格納されるオプションアプリケーション２００の存在を確認する。この場合、Ｗｅｂページ管理モジュール２１は、メモリカード１１６に複数のオプションアプリケーション２００が格納されている場合、その複数のオプションアプリケーション２００の存在を確認する。本実施例では、オプションアプリケーション２００としてＢＭＬｉｎｋＳが格納されている場合について説明する。
【００５７】
Ｗｅｂページ管理モジュール２１は、画像形成装置１の起動時に、Ｗｅｂアプリケーション２０及びオプションアプリケーション２００の存在を確認し（ステップＳ１）、Ｗｅｂアプリライブラリ２２のＵＲＬ分配部２２１のＵＲＬ／処理関数テーブル２２３に登録する（ステップＳ２）。同様に、ＵＲＬ分配部２２２に対しても登録を行う。同様の処理を、所定間隔ごとに実行する。
【００５８】
画像形成装置１の起動後実行されたオプションアプリケーション２００は、必要に応じて、設定記憶領域９１に設定情報を書き込んだり或いは参照したりする。
【００５９】
更に、ｈｔｔｐｄ５１から通知されるＨＴＴＰリクエストの処理を分配するＷｅｂアプリライブラリ２２は、メソッドに応じたＵＲＬ分配部に処理を分配するメソッド分配部２２０と、ＵＲＬに応じたＷｅｂページハンドラ２４へ処理を分配するＵＲＬ分配部２２１及び２２２と、ＵＲＬが未登録の場合の処理を行う未登録ハンドラ２２５とを有する。
【００６０】
ＵＲＬ分配部２２１には、メソッドがＧＥＴである場合にメソッド分配部２２０によって処理が分配され、ＵＲＬ分配部２２２には、メソッドがＰＯＳＴである場合にメソッド分配部２２０によって処理が分配される。
【００６１】
未登録ハンドラ２２５は、ＨＴＴＰクライアント９に対して該当するＷｅｂページが存在しないことを示すＮｏｔ Ｆｏｕｎｄエラー画面を返信する。
【００６２】
更に、画像形成装置１は、設定記憶領域９１を設けてある。設定記憶領域９１は、図３のＭＥＭ−Ｃ１０３、ＭＥＭ−Ｐ１０７又はＨＤＤ１０４のいずれかに設けられた所定の記憶領域であって、図２のアプリケーション層２の各アプリケーションの設定情報を保存する記憶領域であり、電源を切っても内容が保存される。
【００６３】
図５を参照しつつ、オプションアプリケーション２００の設定情報の参照をＷｅｂサービスとして提供する処理について説明する。
【００６４】
Ｗｅｂブラウザを用いてＨＴＴＰクライアント９が、ネットワーク１０を介して画像形成装置１へオプションアプリケーション２００の設定情報を参照するためのＨＴＴＰリクエストを送信する（ステップＳ１１）。
【００６５】
画像形成装置１において、ｈｔｔｐｄ５１は、ＨＴＴＰリクエストを受信すると、Ｗｅｂアプリライブラリ２２のメソッド分配部２２０に受信したＨＴＴＰリクエストを通知する（ステップＳ１２）。ここで、ネットワーク１０を介して受信したＨＴＴＰリクエストに、「ＭＥＴＨＯＤ：ＧＥＴ」及び「ＵＲＬ：／ｗｅｂｓｙｓ／ｘｘｘ／ｇｅｔＢｍｌ」が設定されているとする。
【００６６】
メソッド分配部２２０は、ＭＥＴＨＯＤがＧＥＴであるため、ＧＥＴ用のＵＲＬ分配部２２１にＨＴＴＰリクエストを通知する（ステップＳ１３）。ＵＲＬ分配部２２１は、ＵＲＬ／処理関数テーブル２２３を参照して、ＨＴＴＰリクエストで指定される「ＵＲＬ：／ｗｅｂｓｙｓ／ｘｘｘ／ｇｅｔＢｍｌ」に対応する「ｇｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」を、Ｗｅｂページライブラリ２３を介して関数コールする（ステップＳ１４）。
【００６７】
Ｗｅｂページライブラリ２３では、関数wpf_validHandler２３ａが、ＨＴＴＰリクエストの妥当性を判断し、Ｗｅｂページハンドラ２４のgetBmlinks_handler２４−１では、タイプライブラリ２６及びＸＭＬライブラリ２７（図４）を用いて、「ｇｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」を関数コール可能なデータ形式に変換して、Ｗｅｂページファンクション２５のwpf_get_bmlinks２５−１を関数コールする（ステップＳ１５）。
【００６８】
wpf_get_bmlinks２５−１は、設定記憶領域９１に保存されているオプションアプリケーション２００の設定情報の読み出しを設定記憶領域９１に要求する（ステップＳ１６）。設定記憶領域９１は、要求されたオプションアプリケーション２００の設定情報をwpf_get_bmlinks２５−１に通知する（ステップＳ１７）。
【００６９】
wpf_get_bmlinks２５−１は、その設定情報をgetBmlinks_handler２４−１に戻り値として通知する（ステップＳ１８）。getBmlinks_handler２４−１は、タイプライブラリ２６及びＸＭＬライブラリ２７によって戻り値としての設定情報をシリアライズして、Ｗｅｂページライブラリ２３のwpf_validHandler２３ａに通知する（ステップＳ１９）。
【００７０】
その設定情報は、Ｗｅｂページライブラリ２３のwpf_validHandler２３ａにて、シリアライズされた設定情報をＸＳＬＴプロセッサ２８によってＨＴＭＬ形式に変換してＷｅｂページを構成し、ＵＲＬ分配部２２１に通知する（ステップＳ２０）。
【００７１】
ＵＲＬ分配部２２１は、設定情報を示すＷｅｂページをＨＴＴＰレスポンスとしてｈｔｔｐｄ５１に通知し（ステップＳ２１）、ｈｔｔｐｄ５１は、そのＷｅｂページをＨＴＴＰクライアント９にネットワーク１０を介して提供する（ステップＳ２２）。そして、ＨＴＴＰクライアント９のＷｅｂブラウザに設定情報が表示される。
【００７２】
オプションアプリケーション２００を含むＷｅｂアプリケーションの設定情報の設定（書き込み）をＷｅｂサービスとして提供する処理に関する機能構成について図６で説明する。
【００７３】
図６は、設定情報の設定をＷｅｂサービスとして提供する処理に関する機能構成を示す図である。図６において、設定情報の設定をＷｅｂサービスとして提供する処理を実現するための機能構成は、図５と同様の機能構成であるため、その説明を省略する。
【００７４】
図６を参照しつつ、オプションアプリケーション２００の設定情報の設定をＷｅｂサービスとして提供する処理について説明する。
【００７５】
Ｗｅｂブラウザを用いてＨＴＴＰクライアント９が、ネットワーク１０を介して画像形成装置１へオプションアプリケーション２００の設定情報を設定するためのＨＴＴＰリクエストを送信する（ステップＳ３１）。
【００７６】
ここで、ＨＴＴＰクライアント９のユーザは、Ｗｅｂブラウザに表示される図７に示すような画面に必要事項を入力することによってＨＴＴＰリクエストを送信することができる。図７は、オプションアプリケーションに対する設定情報を設定する画面例を示す図である。図７に示される画面３０において、ユーザがメニュー領域３１から、例えば、オプションアプリケーション２００としてのＢＭＬｉｎｋＳを選択すると、設定領域３２に、設定項目と設定可能領域が表示される。設定項目は、例えば、ＢＭＬｉｎｋＳの有効又は無効、デバイス名、国名、組織名、支店名、ビル名、階数、ブロック名、ＵＵＩＤ、プロファイル有効期限、ＴＴＬ、印刷データ受信タイムアウト等である。ユーザは、画面３０を利用して、設定領域３２に表示された設定項目に設定情報を入力して、適用ボタン３３をクリックすると、ＨＴＴＰリクエストが送信される。
【００７７】
図６に戻り、画像形成装置１において、ｈｔｔｐｄ５１は、ＨＴＴＰリクエストを受信すると、Ｗｅｂアプリライブラリ２２のメソッド分配部２２０に受信したＨＴＴＰリクエストを通知する（ステップＳ３２）。ここで、ネットワーク１０を介して受信したＨＴＴＰリクエストに、「ＭＥＴＨＯＤ：ＰＯＳＴ」及び「ＵＲＬ：／ｗｅｂｓｙｓ／ｘｘｘ／ｓｅｔＢｍｌ」が設定され、設定情報として、
ｂｍｌｉｎｋｓ＝ｏｎ
＆ｄｅｖｉｃｅＮａｍｅ＝ＢＭＰｘｘｘ
＆ｃｏｕｎｔｒｙＣｏｄｅ＝ｊｐ
＆ｏｒｇａｎｉｚａｔｉｏｎＮａｍｅ＝ＲＲＲ
．．．
＆ＴＴＬ＝４
＆ｐｒｉｎｔＴｉｍｅＯｕｔ＝９００
等が指定されているとする。
【００７８】
メソッド分配部２２０は、ＭＥＴＨＯＤがＰＯＳＴであるため、ＰＯＳＴ用のＵＲＬ分配部２２２にＨＴＴＰリクエストを通知する（ステップＳ３３）。ＵＲＬ分配部２２２は、ＵＲＬ／処理関数テーブル２２４を参照して、ＨＴＴＰリクエストで指定される「ＵＲＬ：／ｗｅｂｓｙｓ／ｘｘｘ／ｓｅｔＢｍｌ」に対応する「ｓｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」を、Ｗｅｂページライブラリ２３を介して関数コールする（ステップＳ３４）。
【００７９】
Ｗｅｂページライブラリ２３では、関数wpf_validHandler２３ａが、ＨＴＴＰリクエストの妥当性を判断し、Ｗｅｂページハンドラ２４のsetBmlinks_handler２４−２では、タイプライブラリ２６及びＸＭＬライブラリ２７（図４）を用いて、「ｓｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」を関数コール可能なデータ形式に変換して、Ｗｅｂページファンクション２５のwpf_set_bmlinks２５−２を関数コールする（ステップＳ３５）。
【００８０】
wpf_set_bmlinks２５−２は、オプションアプリケーション２００の設定情報の書き込みを設定記憶領域９１に要求する（ステップＳ３６）。設定記憶領域９１は、要求されたオプションアプリケーション２００の設定情報を書き込み、その処理結果（例えば、処理終了を示すＯＫ又は処理エラーを示すＮＧ）をwpf_set_bmlinks２５−２に通知する（ステップＳ３７）。
【００８１】
wpf_set_bmlinks２５−２は、その処理結果をsetBmlinks_handler２４−２に戻り値として通知する（ステップＳ３８）。setBmlinks_handler２４−２は、タイプライブラリ２６及びＸＭＬライブラリ２７によって戻り値としての処理結果をシリアライズして、Ｗｅｂページライブラリ２３のwpf_validHandler２３ａに通知する（ステップＳ３９）。
【００８２】
その処理結果は、Ｗｅｂページライブラリ２３のwpf_validHandler２３ａにて、シリアライズされた処理結果をＸＳＬＴプロセッサ２８によってＨＴＭＬ形式に変換してＷｅｂページを構成し、ＵＲＬ分配部２２２に通知する（ステップＳ４０）。
【００８３】
ＵＲＬ分配部２２２は、処理結果を示すＷｅｂページをＨＴＴＰレスポンスとしてｈｔｔｐｄ５１に通知し（ステップＳ４１）、ｈｔｔｐｄ５１は、そのＷｅｂページをＨＴＴＰクライアント９にネットワーク１０を介して提供する（ステップＳ４２）。そして、ＨＴＴＰクライアント９のＷｅｂブラウザに処理結果が表示される。
【００８４】
ＨＴＴＰクライアント９のＷｅｂブラウザに表示される処理結果は、例えば、図８に示すような画面である。図８は、設定情報が設定中の画面例を示す図である。図８に示される画面４０において、例えば、メッセージ表示域４２に「設定の書き換え中」及び「設定内容を書き込みためにリセット中です。一時的にアクセス不可能となります。しばらくしてから操作してください。」が表示され、ユーザへユーザが設定した設定情報によって書き換えられていることを表示する。
【００８５】
次に、例えば、別のメモリカード１１６ａの装着によって、オプションアプリケーション２００としてのＢＭＬｉｎｋＳが存在しない場合に、設定情報の参照ができないことをＷｅｂページで通知する機能構成について図９で説明する。
【００８６】
図９は、設定情報の参照ができないことをＷｅｂサービスとして提供する処理に関する機能構成を示す図である。図９において、設定情報の参照ができないことをＷｅｂサービスとして提供する処理を実現するための機能構成は、図５と同様の機能構成であるため、その説明を省略する。
【００８７】
図９において、Ｗｅｂページ管理モジュール２１は、所定時間後のメモリカード１１６ａに対してＢＭＬｉｎｋＳを実行するオプションアプリケーション２００の存在確認によって（ステップＳ１−１）、オプションアプリケーション２００の確認ができない場合、ＵＲＬ分配部２２１のＵＲＬ／処理関数テーブル２２３のＢＭＬｉｎｋＳに関する登録を未登録とする（ステップＳ２−１）。未登録にする方法は、ＵＲＬ／処理関数テーブル２２３内のＢＭＬｉｎｋＳのための所定領域（行）を空白にする、又は、一旦登録したＢＭＬｉｎｋＳ用の行を削除する等の処理で良い。
【００８８】
図９を参照しつつ、オプションアプリケーション２００の設定情報の参照ができないことをＷｅｂサービスとして提供する処理について説明する。
【００８９】
Ｗｅｂブラウザを用いてＨＴＴＰクライアント９が、ネットワーク１０を介して画像形成装置１へオプションアプリケーション２００の設定情報を参照するためのＨＴＴＰリクエストを送信する（ステップＳ５１）。
【００９０】
画像形成装置１において、ｈｔｔｐｄ５１は、ＨＴＴＰリクエストを受信すると、Ｗｅｂアプリライブラリ２２のメソッド分配部２２０に受信したＨＴＴＰリクエストを通知する（ステップＳ５２）。ここで、ネットワーク１０を介して受信したＨＴＴＰリクエストに、「ＭＥＴＨＯＤ：ＧＥＴ」及び「ＵＲＬ：／ｗｅｂｓｙｓ／ｘｘｘ／ｇｅｔＢｍｌ」が設定されているとする。
【００９１】
メソッド分配部２２０は、ＭＥＴＨＯＤがＧＥＴであるため、ＧＥＴ用のＵＲＬ分配部２２１にＨＴＴＰリクエストを通知する（ステップＳ５３）。ＵＲＬ分配部２２１は、ＵＲＬ／処理関数テーブル２２３を参照して、ＨＴＴＰリクエストで指定される「ＵＲＬ：／ｗｅｂｓｙｓ／ｘｘｘ／ｇｅｔＢｍｌ」に対応するハンドラを検索する。この場合、対応するハンドラが登録されていないので、メソッド分配部２２０は、未登録（Not Found）の場合の処理を行うため、未登録ハンドラ２２５を関数コールする（ステップＳ５４）。
【００９２】
未登録ハンドラ２２５は、所定のＷｅｂページが検索されなかったことを示す“Not Found”をＨＴＴＰレスポンスとしてｈｔｔｐｄ５１に通知する（ステップＳ５５）。そして、ｈｔｔｐｄ５１は、ＨＴＴＰクライアント９に“Not Found”を通知する（ステップＳ５６）。
【００９３】
このように、Ｗｅｂページ管理モジュール２１がオプションアプリケーション２００の有効又は無効を所定間隔で確認し、ＵＲＬ／処理関数テーブル２２３及び２２４を変更することによって、オプションアプリケーション２００が有効であるこきのみＨＴＴＰリクエストをＷｅｂページファンクションまで振り分けて、無効である場合には、Ｗｅｂページが存在しない旨の応答（例えば、“Not Found”）をＨＴＴＰクライアント９に提供することができる。
【００９４】
図１０は、オプションアプリケーションが存在しないことを表示する画面例を示す図である。
【００９５】
図１０に示される画面５０において「４０４  Ｎｏｔ  Ｆｏｕｎｄ」を表示するメッセージ５２は、例えば、オプションアプリケーション２００としてのＢＭＬｉｎｋＳが存在しない場合に、ＢＭＬｉｎｋＳの設定情報を参照又は設定するためのＷｅｂページを要求すると、未登録ハンドラ２２５によって表示されるメッセージである。
【００９６】
図１１は、Ｗｅｂページ管理モジュールによるＷｅｂアプリケーションの初期化処理を説明するためのフローチャート図である。
【００９７】
図１１において、Ｗｅｂページ管理モジュール２１は、画像形成装置１に電源が投入されると起動し、ＨＴＴＰリクエストによって指定される各メソッドに対応させて、ＵＲＬ／処理関数テーブル２２３及び２２４の中身が空のＵＲＬ分配部２２１及び２２２を生成する（ステップＳ１１１）。そして、オプションではない（オンボードの）Ｗｅｂアプリケーション（ｗｅｂｓｙｓ）のＷｅｂページを特定するＵＲＬを、ステップＳ１１１で生成したＵＲＬ分配部２２１及び２２２のＵＲＬ／処理関数テーブル２２３及び２２４に夫々登録する（ステップＳ１１２）。
【００９８】
更に、Ｗｅｂページ管理モジュール２１は、ＵＲＬ分配部２２１及び２２２が登録されていないメソッド分配部２２０を生成する（ステップＳ１１３）。そして、Ｗｅｂページ管理モジュール２１は、各メソッドに対応したＵＲＬ分配部２２１及び２２２をメソッド分配部２２０に登録する（ステップＳ１１４）。つまり、所定のテーブルに、メソッド毎にＵＲＬ分配部２２１又は２２２のいずれかを対応させる。
【００９９】
Ｗｅｂページ管理モジュール２１は、初期化処理を完了し、図１２に示すような、所定間隔でオプションアプリケーションの監視を開始する。
【０１００】
図１２は、Ｗｅｂページ管理モジュールによるオプションアプリケーションの監視処理を説明するためのフローチャート図である。
【０１０１】
図１２において、Ｗｅｂページ管理モジュール２１は、オプションアプリケーションの監視処理を開始すると、監視対象となるオプションアプリケーション２００（ＢＭＬｉｎｋＳ）が存在しているか否かを判断する（ステップＳ１１５）。存在している場合、Ｗｅｂページ管理モジュール２１は、ＵＲＬ分配部２２１及び２２２にＷｅｂページのＵＲＬが既に登録されているか否かを判断する（ステップＳ１１６）。
【０１０２】
ステップＳ１１６にて登録されていると判断した場合、ステップＳ１１５へ戻り、監視対象となる次のオプションアプリケーションについて上記同様の処理を繰り返すか、或いは、全てのオプションアプリケーションについて処理済みである場合、所定時間後に上記同様の処理を繰り返す。
【０１０３】
一方、ステップＳ１１６にて登録されていないと判断した場合、ＵＲＬ分配部２２１及び２２２に対してオプションアプリケーションのＷｅｂページのＵＲＬをＵＲＬ／処理関数テーブル２２３及び２２４に夫々登録し（ステップＳ１１７）、ステップＳ１１５へ戻り、監視対象となる次のオプションアプリケーションについて上記同様の処理を繰り返すか、或いは、全てのオプションアプリケーションについて処理済みである場合、所定時間後に上記同様の処理を繰り返す。
【０１０４】
ステップＳ１１５にて監視対象となるオプションアプリケーション２００が存在していない場合、つまり、オプションアプリケーション２００を格納しているメモリカード１１６が取り外されている又は別のメモリカード１１６ａが装着されているような場合、ＵＲＬ分配部２２１及び２２２にＷｅｂページのＵＲＬが既に登録されているか否かを判断する（ステップＳ１１８）。登録されていない場合、ステップＳ１１５へ戻り、監視対象となる次のオプションアプリケーションについて上記同様の処理を繰り返すか、或いは、全てのオプションアプリケーションについて処理済みである場合、所定時間後に上記同様の処理を繰り返す。
【０１０５】
一方、ステップＳ１１８にて登録されていると判断した場合、ＵＲＬ分配部２２１及び２２２のＵＲＬ／処理関数テーブル２２３及び２２４からオプションアプリケーション２００のＷｅｂページのＵＲＬを削除する（ステップＳ１１９）。この場合、図９に示されるような状態となる。
【０１０６】
ここで、ステップＳ１１５にて監視対象となるオプションアプリケーション２００の存在を確認する方法として、例えば、オプションアプリケーション２００は、そのプロセス名をＷｅｂページ管理モジュール２１に予め通知しておいて、Ｗｅｂページ管理モジュール２１のスレッドが登録されたプロセスが存在するか否かをチェックすれば良い。或いは、予め、オプションアプリケーション２００の実行ファイル（例えば、ＢＭＬｉｎｋＳの実行ファイル）を登録しておいて、実行ファイル名によってそのプログラムの存在をチェックするようにしても良い。
【０１０７】
図１３は、Ｗｅｂページ管理モジュールによるアプリケーション監視とＵＲＬ登録及び更新のための処理シーケンスを示す図である。
【０１０８】
図１３において、Ｗｅｂページ管理モジュール２１は、空のＵＲＬ分配部２２１及び２２２を作成し（ステップＳ２１１）、常駐するＷｅｂページのＵＲＬと対応するＷｅｂページ処理関数を登録する（ステップＳ２１２）。ここでは、図２に示すＷｅｂアプリケーション２０のｗｅｂｓｙｓ２０ａ、ｗｅｂｄｏｃｂｏｘ２０ｂ、ＧＰＳ−ｗｅｂ２０ｃ、Ｆａｘ−ｗｅｂ２０ｄに関して登録処理が行われる。
【０１０９】
そして、Ｗｅｂページ管理モジュール２１は、空のメソッド分配部２２０を作成し（ステップＳ２１３）、ＨＴＴＰリクエストのメソッド毎に、対応するＵＲＬ分配部２２１及び２２２を登録する（ステップＳ２１４）。
【０１１０】
その後、Ｗｅｂページ管理モジュール２１は、メモリカード１１６に対してオプションアプリケーション２００の存在を一定間隔でチェックする（ステップＳ２１５）。例えば、一定間隔で、ステップＳ２１５−１、Ｓ２１５−２、Ｓ２１５−３、．．．によって存在をチェックしたとする。メモリカード１１６にオプションアプリケーション２００の他に複数のオプションアプリケーションがある場合、夫々に対してその存在を一定間隔でチェックする。
【０１１１】
例えば、ステップＳ２１５−１では、未だ、メモリカード１１６が装着されていないため、オプションアプリケーション２００が存在しないと判断する。次のタイミングのステップＳ２１５−２では、メモリカード１１６が装着されており、オプションアプリケーション２００が存在すると判断する。
【０１１２】
存在を確認すると、Ｗｅｂページ管理モジュール２１は、ＵＲＬ分配部２２１及び２２２のＵＲＬ／処理関数テーブル２２３及び２２４に対して、「／ｗｅｂｓｙｓ／ｘｘｘ／ｇｅｔＢｍｌ」と「ｇｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」とを対応させた行及び「／ｗｅｂｓｙｓ／ｘｘｘ／ｓｅｔＢｍｌ」と「ｓｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」とを対応させた行を、夫々追加する（ステップＳ２１６）。ここでの処理は、図１２のステップＳ１１６及びＳ１１７での処理に相当する。
【０１１３】
次のタイミングのステップＳ２１５−３では、オプションアプリケーション２００が存在すると判断する。この場合、オプションアプリケーション２００は登録済みであるので、ＵＲＬ分配部２２１及び２２２に対する処理を行わない。ここでの処理は、図１２のステップＳ１１６において登録されていると判断した場合の処理に相当する。
【０１１４】
更に、次のタイミングのステップＳ２１５−４では、メモリカード１１６が取り外されていて、オプションアプリケーション２００が存在しないと判断する。この場合、オプションアプリケーション２００は未だ登録された状態であるので、Ｗｅｂページ管理モジュール２１は、ＵＲＬ分配部２２１及び２２２に対して、ＵＲＬ／処理関数テーブル２２３及び２２４から「／ｗｅｂｓｙｓ／ｘｘｘ／ｇｅｔＢｍｌ」と「ｇｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」とを対応させた行及び「／ｗｅｂｓｙｓ／ｘｘｘ／ｓｅｔＢｍｌ」と「ｓｅｔＢｍｌｉｎｋｓ＿ｈａｎｄｌｅｒ」とを対応させた行を、夫々削除する（ステップＳ２１７）。ここでの処理は、図１２のステップＳ１１８及びＳ１１９での処理に相当する。
【０１１５】
次のタイミングのステップＳ２１５−５では、前回同様に、オプションアプリケーション２００が存在しないと判断する。この場合、オプションアプリケーション２００の登録は削除されているため、ＵＲＬ分配部２２１及び２２２に登録されていない状態である。したがって、Ｗｅｂページ管理モジュール２１は、ＵＲＬ分配部２２１及び２２２に対して何ら処理を行わない。ここでの処理は、図１２のステップＳ１１５及びＳ１１８での処理に相当し、かつ、ステップＳ１１８において、登録されていないと判断された場合の処理に相当する。
【０１１６】
更に、次のタイミングのステップＳ２１５−６では、メモリカード１１６が装着されているため、オプションアプリケーション２００がと判断する。この場合、上記ステップＳ２１６と同様の処理を実行する。
【０１１７】
このような処理がＷｅｂページ管理モジュール２１によって、画像形成装置１が稼動している間常に実行される。
【０１１８】
次に、ＨＴＴＰリクエスト受信後のＷｅｂアプリケーションとしてのオプションアプリケーション２００に対してリクエストを振り分けるリクエスト振分処理について図１４で説明する。
【０１１９】
図１４は、Ｗｅｂアプリケーションへのリクエスト振分処理を説明するためのフローチャート図である。
【０１２０】
図１４において、メソッド分配部２２０は、ｈｔｔｐｄ５１からＨＴＴＰリクエストを振り分けられると、各メソッドに対応するＵＲＬ分配部２２１又は２２２が登録された所定テーブルを参照して、ＨＴＴＰリクエストのメソッドに対応するＵＲＬ分配部２２１又は２２２にリクエストを振り分ける（ステップＳ３２１）。
【０１２１】
ＵＲＬ分配部２２１又は２２２は、ＵＲＬ／処理関数テーブル２２３又は２２４を参照して、ＵＲＬに対応するＷｅｂページハンドラ２４を検索する（ステップＳ３２２）。検索した結果に基づいて、ＵＲＬに対応するＷｅｂページハンドラ２４が登録されているか否かを判断する（ステップＳ３２３）。登録されていない場合、未登録ハンドラ２２５を起動する（ステップＳ３２４）。一方、登録されている場合、ＵＲＬに対応するＷｅｂページハンドラ２４にリクエストを振り分ける（ステップＳ３２５）。メソッドがＧＥＴの場合はgetBmlinks_handler２４−１に、メソッドがＰＯＳＴの場合はsetBmlinks_handler２４−２）にリクエストが振り分けられる。
【０１２２】
Ｗｅｂページハンドラ２４は、タイプライブラリ２６及びＸＭＬライブラリ２７によって、入力パラメータのデータ型を変換して（ステップＳ３２６）、Ｗｅｂページファンクション２５を呼び出す（ステップＳ３２７）。getBmlinks_handler２４−１であればwpf_get_bmlinks２５−１を呼び出し、setBmlinks_handler２４−２であればwpf_set_bmlinks２５−２を呼び出す。
【０１２３】
Ｗｅｂページファンクション２５は、入力値のチェックを行った後（ステップＳ３２８）、設定記憶領域９１へアクセスする（ステップＳ３２９）。メソッドがＧＥＴの場合、wpf_get_bmlinks２５−１によって設定情報を設定記憶領域９１から取得する。メソッドがＰＯＳＴの場合、wpf_set_bmlinks２５−２によって設定情報を設定記憶領域９１から保存する。
【０１２４】
Ｗｅｂページファンクション２５からアクセスによる処理結果を受信すると、Ｗｅｂページハンドラ２４は、タイプライブラリ２６及びＸＭＬライブラリ２７によって処理結果をＸＭＬで記述して、Ｗｅｂページライブラリ２３がＸＳＬＴプロセッサ２８によってＨＴＭＬに変換することによってレスポンスを作成する（ステップＳ３３０）。
【０１２５】
図１５は、Ｗｅｂアプリケーションへ振り分けるための処理シーケンスを示す図である。
【０１２６】
図１５において、ｈｔｔｐｄ５１にて受信したＨＴＴＰリクエストは、ＵＲＬによって指定されるＷｅｂアプリケーションへ振り分けられるｓ（ステップＳ４２０）。この場合、ｗｅｂｓｙｓ２０aに振り分けられ、メソッド分配部２２０によってＨＴＴＰリクエストのメソッドに対応するＵＲＬ分配部に振り分ける（ステップＳ４２１）。
【０１２７】
ＵＲＬ分配部２２１又は２２２は、ＵＲＬから該当するＷｅｂページハンドラ２５をＵＲＬ／処理関数テーブル２２３又は２２４を参照することによって検索する（ステップＳ４２２）。検索結果より、該当するＷｅｂページハンドラ２４が登録されているか否かを判断する（ステップＳ４２３）。未登録の場合、ＵＲＬ分配部２２１又は２２２は、未登録ハンドラを軌道して“Not Found”を通知する処理を行う（ステップＳ４２４）。一方、登録済みの場合、該当するＷｅｂページハンドラ２４にリクエストを振り分ける（ステップＳ４２５）。メソッドがＧＥＴの場合はgetBmlinks_handler２４−１に、メソッドがＰＯＳＴの場合はsetBmlinks_handler２４−２）にリクエストが振り分けられる。
【０１２８】
Ｗｅｂページハンドラ２４は、タイプライブラリ２６及びＸＭＬライブラリ２７によって、入力パラメータのデータ型を変換して（ステップＳ４２６）、Ｗｅｂページファンクション２５を呼び出す（ステップＳ４２７）。getBmlinks_handler２４−１であればwpf_get_bmlinks２５−１を呼び出し、setBmlinks_handler２４−２であればwpf_set_bmlinks２５−２を呼び出す。
【０１２９】
Ｗｅｂページファンクション２５は、入力値のチェックを行った後、設定記憶領域９１へアクセスする（ステップＳ３２８）。メソッドがＧＥＴの場合、wpf_get_bmlinks２５−１によって設定情報を設定記憶領域９１から取得する。メソッドがＰＯＳＴの場合、wpf_set_bmlinks２５−２によって設定情報を設定記憶領域９１から保存する。
【０１３０】
Ｗｅｂページファンクション２５からアクセスによる処理結果を受信すると（ステップＳ３２９）、Ｗｅｂページハンドラ２４は、タイプライブラリ２６及びＸＭＬライブラリ２７によって処理結果をＸＭＬで記述して、Ｗｅｂページライブラリ２３がＸＳＬＴプロセッサ２８によってＨＴＭＬに変換することによってレスポンスを作成する（ステップＳ３３０）。
【０１３１】
上記より、このような本発明に係るＷｅｂサーバ機能を組み込んだ画像形成装置１では、更に、ＳＤカード等の自在に着脱可能なメモリカード１１６を装着することによってオプションアプリケーション２００を提供する場合、Ｗｅｂページ管理モジュール２１が所定間隔でオプションアプリケーション２００の存在を確認する。存在する場合には、
オプションアプリケーション２００への設定情報の参照及び設定を行うＷｅｂアプリケーション２５の実行を可能とし、存在しない場合、Ｗｅｂアプリケーション２５を実行することなく、未登録ハンドラ２２５を実行することによって、存在しないオプションアプリケーション２００に対する設定情報の参照及び設定を行わないようにすることができる。
【図面の簡単な説明】
【０１３２】
【図１】本発明の一実施例にかかる画像処理システムの構成例を示す図である。
【図２】本発明の一実施例にかかる画像形成装置の機能構成図である。
【図３】画像形成装置のハードウェア構成を示すブロック図である。
【図４】Ｗｅｂアプリケーションのモジュール構成図を示したものである。
【図５】設定情報をＷｅｂサービスとして提供する処理に関する機能構成を示す図である。
【図６】設定情報の設定をＷｅｂサービスとして提供する処理に関する機能構成を示す図である。
【図７】設定情報の参照ができないことをＷｅｂサービスとして提供する処理に関する機能構成を示す図である。
【図８】Ｗｅｂページ管理モジュールによるＷｅｂアプリケーションの初期化処理を説明するためのフローチャート図である。
【図９】Ｗｅｂページ管理モジュールによるオプションアプリケーションの監視処理を説明するためのフローチャート図である。
【図１０】Ｗｅｂページ管理モジュールによるアプリケーション監視とＵＲＬ登録及び更新のための処理シーケンスを示す図である。
【図１１】Ｗｅｂアプリケーションへのリクエスト振分処理を説明するためのフローチャート図である。
【図１２】Ｗｅｂアプリケーションへ振り分けるための処理シーケンスを示す図である。
【図１３】オプションアプリケーションに対する設定情報を設定する画面例を示す図である。
【図１４】設定情報が設定中の画面例を示す図である。
【図１５】オプションアプリケーションが存在しないことを表示する画面例を示す図である。
【符号の説明】
【０１３３】
１        画像形成装置
２        アプリケーション層
２０ａ    ｗｅｂｓｙｓ
２１      Ｗｅｂページ管理モジュール
２２      Ｗｅｂアプリライブラリ
２２５    未登録ハンドラ
２３      Ｗｅｂページライブラリ
２４      Ｗｅｂページハンドラ
２５      Ｗｅｂページファンクション
３        インタフェース
４        プラットフォーム層
５        サービス層
５１      ｈｔｔｐｄ
７        インタフェース
８        エンジン部
９        ＨＴＴＰクライアント
１０      ネットワーク
【図１】
2005165750.tif 000003
【図２】
2005165750.tif 000004
【図３】
2005165750.tif 000005
【図４】
2005165750.tif 000006
【図５】
2005165750.tif 000007
【図６】
2005165750.tif 000008
【図７】
2005165750.tif 000009
【図８】
2005165750.tif 000010
【図９】
2005165750.tif 000011
【図１０】
2005165750.tif 000012
【図１１】
2005165750.tif 000013
【図１２】
2005165750.tif 000014
【図１３】
2005165750.tif 000015
【図１４】
2005165750.tif 000016
【図１５】
2005165750.tif 000017