(57)【要約】【課題】  ＵＲＬと処理関数との対応付けによるサーバプログラムへの負担を減少させてパフォーマンスの低下を防止することができると共に、ＵＲＬ以外の情報に基づいて多様な制御を行うことのできるＷＷＷサーバ機能を有する組み込み機器等を提供することを目的とする。【解決手段】  Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器において、ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける手段と、上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける手段とを備えるＷＷＷサーバ機能を有する組み込み機器により構成される。【選択図】  図５
2005092811.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器において、
ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける手段と、
上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける手段とを備えたことを特徴とするＷＷＷサーバ機能を有する組み込み機器。
【請求項２】
上記アプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける処理をＨＴＴＰデーモンが行う請求項１に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項３】
上記ＵＲＬパスに従って対応する処理関数に処理を振り分ける処理をＷｅｂアプリケーション内のライブラリが行う請求項１または２のいずれか一項に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項４】
上記ＵＲＬパスに従って対応する処理関数に処理を振り分ける処理を、ＵＲＬパスと処理関数とを対応付けたＵＲＬテーブルに基づき上記ライブラリ内のＵＲＬディストリビュータが行う請求項３に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項５】
上記ＨＴＴＰリクエストの指定するサービスに従って処理を振り分ける処理を、サービスを特定するポート識別子と上記ＵＲＬディストリビュータとを対応付けたサービステーブルに基づき上記ライブラリ内のサービスディストリビュータが行う請求項４に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項６】
上記ＨＴＴＰリクエストに含まれるメソッドに従って処理を振り分ける処理を、メソッドと上記サービスディストリビュータとを対応付けたメソッドテーブルに基づき上記ライブラリ内のメソッドディストリビュータが行う請求項５に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項７】
上記ＨＴＴＰリクエストの指定するサービスを特定するポート識別子をＨＴＴＰデーモンが生成する請求項５に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項８】
ポート識別子とポート番号とを対応付けて管理するポート識別子／ポート番号対応テーブルからＨＴＴＰリクエストの指定するポート識別子を取得する請求項７に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項９】
システム起動時に各テーブルを生成して値を登録する初期化関数を備えた請求項４乃至６のいずれか一項に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項１０】
該当するＷｅｂページが表示できない場合にエラーを返送するｎｏｔＦｏｕｎｄハンドラを備えた請求項１乃至９のいずれか一項に記載のＷＷＷサーバ機能を有する組み込み機器。
【請求項１１】
Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器におけるＨＴＴＰリクエストの振り分け方法であって、
ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける工程と、
上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける工程とを備えたＨＴＴＰリクエスト振り分け方法。
【請求項１２】
Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器におけるＨＴＴＰリクエストの振り分けプログラムであって、
ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける機能と、
上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける機能とをコンピュータに実現させるＨＴＴＰリクエスト振り分けプログラム。
【請求項１３】
Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器と複数のクライアントがネットワークに接続されてなるＷｅｂシステムにおいて、
上記クライアントから上記組み込み機器に送られるＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける手段と、
上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける手段とを備えたことを特徴とするＷｅｂシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＷＷＷサーバ機能を有する画像形成装置等の組み込み機器、ＨＴＴＰリクエスト振り分け方法、ＨＴＴＰリクエスト振り分けプログラム、および、Ｗｅｂシステムに関する。
【背景技術】
【０００２】
一般のＷＷＷサーバではＷｅｂページはファイルで実現されており、ＵＲＬの管理はファイル単位で行われる。ＣＧＩに関しても同様にファイル単位で管理されており、動的な値はファイルにパラメータを渡すことによって処理される。
【０００３】
しかし、画像形成装置等の組み込み機器（ＰＣ、サーバ等の情報処理装置以外にＯＳ、アプリケーションを組み込んだ機器）上で動作するＷＷＷサーバにあっては、リソースの節約を目的に、Ｗｅｂページをファイルとしてではなく処理関数として実現しているのが一般的である。そのため、ＨＴＴＰクライアント（ブラウザ）から送られてくるＨＴＴＰリクエストに含まれるＵＲＬと処理関数とをサーバプログラム内で対応付けて管理する必要がある。
【０００４】
一方、組み込み機器上にＷＷＷサーバを実現したものとして、外部のパーソナルコンピュータ等からブラウザを介して指示を与えることによりファクシミリ送信機能を動作させることが可能なファクシミリ装置が開示されている（例えば、特許文献１参照。）。
【特許文献１】特開平１０−１７３８９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したように、画像形成装置等の組み込み機器上で動作するＷＷＷサーバにあっては、サーバプログラム内でＵＲＬと処理関数とを対応付けて管理する必要があったため、ＷＷＷサーバで全ての対応付けを管理するとなるとＷＷＷサーバに与える負担が大きくなり、パフォーマンスが低下するという問題がある。
【０００６】
一方、一般のＷＷＷサーバのようにＵＲＬがファイル単位で管理されている場合は、ＵＲＬだけがＷｅｂページを決定する際の判断基準となる。しかし、画像形成装置等の組み込み機器上で動作するＷＷＷサーバにあっては、最終的に処理関数によってＷｅｂページの表示処理が行われるため、ＵＲＬ以外の情報に基づいて多様な制御を行える余地がある。例えば、ＨＴＴＰＳ（ＳＳＬをベースとしてセキュリティ機能を付加したＨＴＴＰ）での要求時はＷｅｂページを表示するがＨＴＴＰでの要求時は表示しないといった、ＵＲＬ以外の情報に基づいてＷｅｂページのアクセス制限を設けることが想定される。しかしながら、これらを行うためのメカニズムは考え出されていなかった。
【０００７】
なお、上述した特許文献１においては、これらの課題および解決手法についての記載はない。
【０００８】
本発明は上記の従来の問題点に鑑み提案されたものであり、その目的とするところは、ＵＲＬと処理関数との対応付けによるサーバプログラムへの負担を減少させてパフォーマンスの低下を防止することにある。併せて、ＵＲＬ以外の情報に基づいて多様な制御を行えるようにすることも目的としている。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明は、請求項１に記載されるように、Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器において、ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける手段と、上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける手段とを備えるようにしている。
【００１０】
これにより、サーバプログラムは第一段階としてのアプリケーションパスに基づく振り分けを行うのみでよくなるため、負担を低減させてパフォーマンスの低下を防止することができる。
【００１１】
また、本発明は、請求項２に記載されるように、上記アプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける処理をＨＴＴＰデーモンが行うようにすることができる。
【００１２】
また、本発明は、請求項３に記載されるように、上記ＵＲＬパスに従って対応する処理関数に処理を振り分ける処理をＷｅｂアプリケーション内のライブラリが行うようにすることができる。
【００１３】
また、本発明は、請求項４に記載されるように、上記ＵＲＬパスに従って対応する処理関数に処理を振り分ける処理を、ＵＲＬパスと処理関数とを対応付けたＵＲＬテーブルに基づき上記ライブラリ内のＵＲＬディストリビュータが行うようにすることができる。
【００１４】
また、本発明は、請求項５に記載されるように、上記ＨＴＴＰリクエストの指定するサービスに従って処理を振り分ける処理を、サービスを特定するポート識別子と上記ＵＲＬディストリビュータとを対応付けたサービステーブルに基づき上記ライブラリ内のサービスディストリビュータが行うようにすることができる。
【００１５】
これにより、ＵＲＬ以外の情報であるポート識別子に基づいて多様な制御を行うことができる。
【００１６】
また、本発明は、請求項６に記載されるように、上記ＨＴＴＰリクエストに含まれるメソッドに従って処理を振り分ける処理を、メソッドと上記サービスディストリビュータとを対応付けたメソッドテーブルに基づき上記ライブラリ内のメソッドディストリビュータが行うようにすることができる。
【００１７】
これにより、ＵＲＬ以外の情報であるメソッドに基づいて多様な制御を行うことができる。
【００１８】
また、本発明は、請求項７に記載されるように、上記ＨＴＴＰリクエストの指定するサービスを特定するポート識別子をＨＴＴＰデーモンが生成するようにすることができる。
【００１９】
また、本発明は、請求項８に記載されるように、ポート識別子とポート番号とを対応付けて管理するポート識別子／ポート番号対応テーブルからＨＴＴＰリクエストの指定するポート識別子を取得するようにすることができる。
【００２０】
また、本発明は、請求項９に記載されるように、システム起動時に各テーブルを生成して値を登録する初期化関数を備えるようにすることができる。
【００２１】
また、本発明は、請求項１０に記載されるように、該当するＷｅｂページが表示できない場合にエラーを返送するｎｏｔＦｏｕｎｄハンドラを備えるようにすることができる。
【００２２】
また、本発明は、請求項１１に記載されるように、Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器におけるＨＴＴＰリクエストの振り分け方法であって、ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける工程と、上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける工程とを備えるＨＴＴＰリクエスト振り分け方法として構成することができる。
【００２３】
また、本発明は、請求項１２に記載されるように、Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器におけるＨＴＴＰリクエストの振り分けプログラムであって、ＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける機能と、上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける機能とをコンピュータに実現させるＨＴＴＰリクエスト振り分けプログラムとして構成することができる。
【００２４】
また、本発明は、請求項１３に記載されるように、Ｗｅｂページが処理関数として実現されるＷＷＷサーバ機能を有する組み込み機器と複数のクライアントがネットワークに接続されてなるＷｅｂシステムにおいて、上記クライアントから上記組み込み機器に送られるＨＴＴＰリクエストに含まれるＵＲＬのアプリケーションパスに従って対応するＷｅｂアプリケーションに処理を振り分ける手段と、上記Ｗｅｂアプリケーション内で上記ＵＲＬのＵＲＬパスに従って対応する処理関数に処理を振り分ける手段とを備えたＷｅｂシステムとして構成することができる。
【発明の効果】
【００２５】
本発明によれば、ＵＲＬと処理関数との対応付けによるサーバプログラムへの負担を減少させてパフォーマンスの低下を防止することができると共に、ＵＲＬ以外の情報に基づいて多様な制御を行うことができる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施の形態を図面に基づいて説明する。
【００２７】
図１は、組み込み機器としてプリンタ、コピー、ファクシミリ、スキャナ等の各装置の機能を一つの筐体内に収納した複合機あるいは融合機と呼ばれる画像形成装置を用いて構成した、本発明の一実施形態にかかる画像処理システムの構成例を示す図である。
【００２８】
図１において、画像処理システムは、画像形成装置１に対し、複数のＨＴＴＰクライアント９等がＬＡＮ（Local Area Network）、イントラネット、又はインターネット等のネットワーク１０を介して接続されている。
【００２９】
画像形成装置１は、ＨＴＴＰクライアント９からの要求に応じて文書データの印刷や、ファックス送信などの処理を実行する。また、画像形成装置１は、ＨＴＴＰクライアント９からのＨＴＴＰリクエストに応じて、当該ＨＴＴＰリクエストにおいて要求された情報を表示するＷｅｂページをＨＴＴＰクライアント９に対して送信する。例えば、ＨＴＴＰクライアント９のユーザがＷｅｂブラウザから画像形成装置１のステータス情報を要求した場合は、画像形成装置１は、ステータス情報を格納したＨＴＭＬ（HyperText Markup Language）データをＨＴＴＰクライアント９に送信する。なお、ＨＴＴＰクライアント９は、ユーザが直接利用するＰＣ（Personal Computer）、ＰＤＡ（Personal Digital(Data) Assistants）、または携帯電話等の端末であり、画像形成装置１から送信されるＷｅｂページを表示するＷｅｂブラウザを備えている。
【００３０】
図２は、本発明の一実施形態にかかる画像形成装置の機能構成図である。
【００３１】
図２において、画像形成装置１は、アプリケーション層２とプラットフォーム層４とエンジン部８とを含む。インタフェース３はアプリケーション層２に対するプラットフォーム層４の提供するインタフェース（ＡＰＩ）であり、インタフェース７はプラットフォーム層４とエンジン部８との間のインタフェース（エンジンＩ／Ｆ）である。
【００３２】
アプリケーション層２は画像形成装置１における個別の処理を行うソフトウェア群であり、コピー用のアプリケーションであるコピーアプリケーション２ａと、ファックス用のアプリケーションであるファックスアプリケーション２ｂと、プリンタ用のアプリケーションであるプリンタアプリケーション２ｃと、ネットワークを介してファイルのやりとりを行うネットファイル用のアプリケーションであるネットファイルアプリケーション２ｄとを含む。また、Ｗｅｂアプリケーション２０はＨＴＴＰプロトコルによるＷｅｂサービスを行うアプリケーション群であり、ブラウザを使って機器の状態を見たり、機器のネットワーク設定等をすることができるＷｅｂアプリケーション（ｗｅｂｓｙｓ）２０ａと、ネットファイルアプリケーション２ｄの機能を使い、ブラウザを使って文書の引き取りおよび文書管理を行うＷｅｂアプリケーション（ｗｅｂｄｏｃｂｏｘ）２０ｂと、プリンタのジョブ履歴（スプールの状態）等を表示するＷｅｂアプリケーション（ＧＰＳ−ｗｅｂ）２０ｃと、ファックスの初期設定やファックスの通信管理レポート（通信履歴）を表形式で見ることのできるＷｅｂアプリケーション（Ｆａｘ−ｗｅｂ）２０ｄとを含む。
【００３３】
一方、プラットフォーム層４はアプリケーション層２のアプリケーションに対してインタフェース３を介して共通的なサービス機能を提供するソフトウェア群であり、サービス層５とＯＳ層６に分かれる。サービス層５には、アプリケーション管理、操作部制御、システム画面表示、ＬＥＤ表示、リソース管理、および割り込み制御等の複数の機能を有するＳＣＳ５ａと、ファックス機能のＡＰＩを提供するＦＣＳ５ｂと、エンジン部の制御を行うＥＣＳ５ｃと、メモリ制御を行うＭＣＳ５ｄと、オペレータ（操作者）とのインタフェースとなる操作部（オペレーションパネル）の制御を行うＯＣＳ５ｅと、ネットワーク入出力を必要とするアプリケーションに対して共通に利用できるサービスを提供するＮＣＳ５ｆとが含まれる。ＯＳ層６にはＯＳ（ＬＰＵＸ）６１が含まれる。
【００３４】
一方、エンジン部８には、プロッタ８１、スキャナ８２、その他ハードウェアリソース８３等のエンジンと、これらのエンジンを制御するエンジン制御ボード８４とが含まれる。
【００３５】
図３は図２に示す画像形成装置のハードウェア構成を示すブロック図である。
【００３６】
図３において、画像形成装置１は、画像形成装置における主たる制御動作を行うコントローラ１０１にオペレーションパネル１１３とファックスコントロールユニット１１４とプロッタ８１とスキャナ８２とその他ハードウェアリソース８３とが接続されて構成されている。
【００３７】
コントローラ１０１は、画像処理用途向けのＩＣであるＡＳＩＣ１０２にブリッジとしてのＮＢ１０５を介して一般制御用のＩＣであるＣＰＵ１０６が接続され、ＮＢ１０５のバス（ＰＣＩ  ＢＵＳ）に、周辺デバイス等との接続を行うブリッジであるＳＢ１０８と、ネットワーク通信を制御するＮＩＣ１０９と、ＵＳＢインタフェースを提供するＵＳＢ１１０と、ＩＥＥＥ１３９４インタフェースを提供するＩＥＥＥ１３９４１１１と、セントロニクスインタフェースを提供するセントロニクス１１２とが接続され、ＡＳＩＣ１０２に記憶装置としてのＭＥＭ−Ｃ１０３とＨＤＤ１０４が接続され、ＮＢ１０５に記憶装置としてのＭＥＭ−Ｐ１０７が接続されて構成されている。
【００３８】
図４はＷｅｂアプリケーションのモジュール構成図を示したものである。
【００３９】
図４において、Ｗｅｂアプリケーション２１は、ブラウザ等のＨＴＴＰクライアント９からネットワーク１０を介して受け付けたＨＴＴＰリクエストの振り分けおよびＷｅｂアプリケーションでの処理結果（ＨＴＭＬ，ＸＭＬ，ＴＥＸＴ）の返送を行うＨＴＴＰデーモン５１（図２のＮＣＳ５ｆの機能の一部）に接続されており、内部には、各種の共通機能を提供するＷｅｂアプリケーション開発用のフレームワークであるＷｅｂアプリライブラリ２２およびＷｅｂページライブラリ２３と、Ｗｅｂページの操作を行うＷｅｂページハンドラ２４と、Ｗｅｂページの表示に関する具体的処理を行うＷｅｂページファンクション２５とを含んでいる。ここで、Ｗｅｂページハンドラ２４およびＷｅｂページファンクション２５はＷｅｂページを実現する処理関数を構成するものである。また、Ｗｅｂページファンクション２５は処理の実行に際し、インタフェース３を介してＳＣＳ５ａ、ＮＣＳ５ｆ、ＵＣＳ５ｇ等と通信を行うようになっている。
【００４０】
図５はＨＴＴＰデーモンおよびＷｅｂアプリケーションにおける処理の振り分けにかかる機能構成図を示したものである。
【００４１】
図５において、ＨＴＴＰデーモン５１には、ＨＴＴＰクライアント９から与えられるＨＴＴＰリクエストに含まれるアプリケーションパスに基づいて対応するＷｅｂアプリケーションに処理を振り分けると共に、利用するサービス（ＨＴＴＰ，ＨＴＴＰＳ，・・）を示すポート識別子を生成するリクエスト処理部５２が設けられている。ここで、「アプリケーションパス」とは、図６に示すように、ＨＴＴＰリクエストを例えば「http://xxx.xxx.xxx.xxx/web/user/ja/websys/webArch/mainFrame.cgi」とした場合、ホスト「xxx.xxx.xxx.xxx」に続く１階層分の「web」部分を意味するものとする。また、後述する「ＵＲＬパス」はアプリケーションパスを含む「web/user/ja/websys/webArch/mainFrame.cgi」部分を意味するものとする。
【００４２】
一方、Ｗｅｂアプリケーション２１のＷｅｂアプリライブラリ２２には、ＨＴＴＰクライアント９から与えられるＨＴＴＰリクエストのメソッド（ＧＥＴ，ＰＯＳＴ，・・）に応じて処理を振り分けるメソッドディストリビュータ２２１と、ＨＴＴＰデーモン５１により生成されたポート識別子に基づき、利用するサービス（ＨＴＴＰ，ＨＴＴＰＳ，・・）に応じて処理を振り分けるサービスディストリビュータ２２２と、ＨＴＴＰリクエストのＵＲＬパスに応じて処理を振り分けるＵＲＬディストリビュータ２２３とが設けられている。
【００４３】
また、メソッドディストリビュータ２２１、サービスディストリビュータ２２２、ＵＲＬディストリビュータ２２３等に対して初期化処理（テーブル作成等）を行う初期化関数２６が設けられている。その他は図４に示したものと同様である。また、他のＷｅｂアプリケーションについても同様な構成となっている。
【００４４】
図７は図５におけるＷｅｂアプリケーションの詳細を示す機能構成図である。
【００４５】
図７において、Ｗｅｂアプリライブラリ２２のメソッドディストリビュータ２２１には、ＨＴＴＰリクエストのメソッドと振り分けるサービスディストリビュータとを対応付けたメソッドテーブルＴ１が設けられている。また、サービスディストリビュータ２２２には、利用するサービスと振り分けるＵＲＬディストリビュータとを対応付けたサービステーブルＴ２が設けられている。サービス毎に設けられた他のサービスディストリビュータについても同様である。更に、ＵＲＬディストリビュータ２２３には、ＵＲＬパスと振り分けるＷｅｂページハンドラ２４とを対応付けたＵＲＬテーブルＴ３が設けられている。サービスおよびＵＲＬパス毎に設けられた他のＵＲＬディストリビュータについても同様である。
【００４６】
一方、該当するページが存在しない旨（ｎｏｔＦｏｕｎｄ）の表示情報を返送するためのｎｏｔＦｏｕｎｄハンドラ２２４が設けられている。その他は図５に示したものと同様である。
【００４７】
図８はＨＴＴＰデーモンにおけるポート識別子の取得にかかる機能構成図を示したものである。
【００４８】
図８において、ＨＴＴＰデーモン５１には、アプリＩＤとアプリケーションパスとを対応付けたアプリＩＤ／アプリケーションパス対応テーブル５３と、アプリＩＤとポート識別子とを対応付けたアプリＩＤ／ポート識別子対応テーブル５４とが設けられ、リクエスト処理部５２はポート識別子とポート番号とを対応付けたポート識別子／ポート番号対応テーブルＴ０からポート識別子を得ると共に、アプリＩＤ／アプリケーションパス対応テーブル５３およびアプリＩＤ／ポート識別子対応テーブル５４から得たポート識別子と照合が行えるようになっている。そして、リクエスト処理部５２は取得（生成）したポート識別子をＨＴＴＰリクエストに付与して振り分け対象のＷｅｂアプリケーションに渡すようになっている。
【００４９】
次に、上記の実施形態の動作について説明する。
【００５０】
図９はＨＴＴＰデーモンおよびＷｅｂアプリケーションにおける処理の振り分けの動作を示すフローチャートであり、図１０は図９に対応するシーケンス図である。
【００５１】
図９および図１０において、ＨＴＴＰクライアント９からＨＴＴＰリクエストを受け付けたＨＴＴＰデーモン（ｈｔｔｐｄ）５１は、ＨＴＴＰリクエストに含まれるＵＲＬの一部であるアプリケーションパスに対応するＷｅｂアプリケーションを登録テーブルから検索する（ステップＳ１）。
【００５２】
ここで、対応するＷｅｂアプリケーションが登録されていない場合（ステップＳ２のＮｏ）、ｎｏｔＦｏｕｎｄハンドラ２２４を起動し、ＨＴＴＰクライアント９にエラー応答（ＮｏｔＦｏｕｎｄ）を返信し（ステップＳ３）、処理を終了する。
【００５３】
一方、対応するＷｅｂアプリケーションが登録されている場合（ステップＳ２のＹｅｓ）、取得したＷｅｂアプリケーション２１にＨＴＴＰリクエストを渡して処理を委譲する（ステップＳ４）。これがＨＴＴＰデーモン５１による第一の振り分けとなる。
【００５４】
次いで、処理を委譲されたＷｅｂアプリケーション２１（Ａｐｐ）は、ＵＲＬパスに対応する処理関数（Ｗｅｂページハンドラ）を登録テーブルから検索する（ステップＳ５）。
【００５５】
対応する処理関数が登録されていない場合（ステップＳ６のＮｏ）、ｎｏｔＦｏｕｎｄハンドラ２２４を起動し、ＨＴＴＰクライアント９にエラー応答（ＮｏｔＦｏｕｎｄ）を返信し（ステップＳ７）、処理を終了する。
【００５６】
次いで、対応する処理関数が登録されている場合（ステップＳ６のＹｅｓ）、その処理関数を実行し（ステップＳ８）、処理を終了する。これがＷｅｂアプリケーションによる第二の振り分けとなる。
【００５７】
このように、ＨＴＴＰデーモン５１では対応するＷｅｂアプリケーションへ第一段階として振り分けるだけでよいものとし、処理関数への第二の振り分けはＷｅｂアプリケーション内で行うようにしているため、ＵＲＬと処理関数との対応付けのためにサーバプログラムであるＨＴＴＰデーモン５１の処理負担が重くなってパフォーマンスが低下するという問題を防止できるものである。
【００５８】
図１１はＷｅｂアプリケーションにおける処理の振り分け（第二の振り分け）の動作をより詳細に示したフローチャートであり、図１２は図１１に対応するシーケンス図である。
【００５９】
図１１および図１２において、メソッドディストリビュータ２２１は受け付けたＨＴＴＰリクエストのＨＴＴＰヘッダから取得したＨＴＴＰメソッドに対応するサービスディストリビュータ２２２を取得し起動する（ステップＳ１１）。すなわち、メソッドテーブルＴ１（図７）からメソッドをキーにサービスディストリビュータを取得して起動する。
【００６０】
起動されたサービスディストリビュータ２２２はリクエスト情報のサービス（ポート識別子の示すサービス）を基に、対応するＵＲＬディストリビュータを検索する（ステップＳ１２）。すなわち、サービステーブルＴ２（図７）からサービス（ポート識別子）をキーにＵＲＬディストリビュータを検索する。
【００６１】
対応するＵＲＬディストリビュータが登録されていない場合（ステップＳ１３のＮｏ）は、ｎｏｔＦｏｕｎｄハンドラ２２４を起動し、エラー応答をＨＴＴＰクライアント９に返信し（ステップＳ１４）、処理を終了する。
【００６２】
一方、対応するＵＲＬディストリビュータが登録されている場合（ステップＳ１３のＹｅｓ）は、取得したＵＲＬディストリビュータ２２３を起動する（ステップＳ１５）。
【００６３】
起動されたＵＲＬディストリビュータ２２３はリクエスト情報のＵＲＬパスを基に対応するＷｅｂページハンドラ（処理関数）を検索する（ステップＳ１６）。すなわち、ＵＲＬテーブルＴ３（図７）からＵＲＬパスをキーにＷｅｂページハンドラを検索する。
【００６４】
対応するＷｅｂページハンドラが登録されていない場合（ステップＳ１７のＮｏ）は、ｎｏｔＦｏｕｎｄハンドラ２２４を起動し、エラー応答をＨＴＴＰクライアント９に返信し（ステップＳ１８）、処理を終了する。
【００６５】
対応するＷｅｂページハンドラが登録されている場合（ステップＳ１７のＹｅｓ）は、取得したＷｅｂページハンドラ２４を起動し（ステップＳ１９）、処理を終了する。
【００６６】
このように、Ｗｅｂアプリケーション２１においてメソッド、サービス（ポート識別子）、ＵＲＬパスに基づいて処理関数（Ｗｅｂページハンドラ）を第二段階として振り分けているため、組み込み機器上のＷＷＷサーバにおけるＵＲＬと処理関数との対応付けが適切に行えると共に、多様なページアクセスの制御を行うことができる。例えば、ＨＴＴＰＳでの要求時はページを表示するが、ＨＴＴＰでの要求時は表示しないといったことを容易に行うことができる。
【００６７】
なお、上記の実施形態ではメソッド、サービス（ポート識別子）、ＵＲＬパスを振り分けの指標に用いたが、その他にコンテンツタイプ、言語、ユーザーエージェント等を用いることもできる。
【００６８】
次に、システムの起動時等に行われる振り分け情報の初期化処理について説明する。
【００６９】
図１３は初期化関数の動作を示すシーケンス図である。なお、ここではＨＴＴＰＳとＨＴＴＰとを登録サービスの対象としている。
【００７０】
図１３において、Ｗｅｂアプリケーション２１の初期化関数２６は初期化処理が開始されると、ＨＴＴＰＳ用のＵＲＬテーブルＴ３を作成し（ステップＳ２１）、ＨＴＴＰＳ要求時に表示を行うＷｅｂページのＵＲＬパスと対応する処理関数（Ｗｅｂページハンドラ）を対応付けて登録する（ステップＳ２２、ステップＳ２３）。
【００７１】
同様にＨＴＴＰ用のＵＲＬテーブルＴ３を作成し（ステップＳ２４）、ＨＴＴＰ要求時に表示を行うＷｅｂページのＵＲＬパスと対応する処理関数（Ｗｅｂページハンドラ）を対応付けて登録する（ステップＳ２５、ステップＳ２６）。
【００７２】
次いで、サービステーブルＴ２を作成し（ステップＳ２７）、サービスとＵＲＬディストリビュータとを対応付けて登録する（ステップＳ２８、ステップＳ２９）。
【００７３】
次いで、メソッドテーブルＴ１を作成し、メソッドとサービスディストリビュータとを対応付けて登録する（ステップＳ３０）。なお、メソッドテーブルＴ１およびメソッドディストリビュータ２２１は通信制御を司るシステム（ＨＴＴＰコネクションマネージャ）の管理下にある。
【００７４】
このように、起動時等の初期化処理において振り分けのためのメソッドテーブルＴ１、サービステーブルＴ２、ＵＲＬテーブルＴ３が生成されるため、その時点で利用不能な処理関数が登録されることがなくなる。
【図面の簡単な説明】
【００７５】
【図１】本発明の一実施形態にかかる画像処理システムの構成例を示す図である。
【図２】本発明の一実施形態にかかる画像形成装置の機能構成図である。
【図３】画像形成装置のハードウェア構成図である。
【図４】Ｗｅｂアプリケーションのモジュール構成図である。
【図５】ＨＴＴＰデーモンおよびＷｅｂアプリケーションにおける処理の振り分けにかかる機能構成図である。
【図６】アプリケーションパスおよびＵＲＬパスの説明図
【図７】図５におけるＷｅｂアプリケーションの詳細を示す機能構成図である。
【図８】ＨＴＴＰデーモンにおけるポート識別子の取得にかかる機能構成図である。
【図９】ＨＴＴＰデーモンおよびＷｅｂアプリケーションにおける処理の振り分けの動作を示すフローチャートである。
【図１０】図９に対応するシーケンス図である。
【図１１】Ｗｅｂアプリケーションにおける処理の振り分けの動作を示すフローチャートである。
【図１２】図１１に対応するシーケンス図である。
【図１３】初期化関数の動作を示すシーケンス図である。
【符号の説明】
【００７６】
１        画像形成装置
２        アプリケーション層
２１      Ｗｅｂアプリケーション
２２      Ｗｅｂアプリライブラリ
２２１    メソッドディストリビュータ
２２２    サービスディストリビュータ
２２３    ＵＲＬディストリビュータ
２２４    ｎｏｔＦｏｕｎｄハンドラ
Ｔ１      メソッドテーブル
Ｔ２      サービステーブル
Ｔ３      ＵＲＬテーブル
２３      Ｗｅｂページライブラリ
２４      Ｗｅｂページハンドラ
２５      Ｗｅｂページファンクション
２６      初期化関数
３        インタフェース
４        プラットフォーム層
５        サービス層
５１      ＨＴＴＰデーモン
５２      リクエスト処理部
５３      アプリＩＤ／アプリケーションパス対応テーブル
５４      アプリＩＤ／ポート識別子対応テーブル
Ｔ０      ポート識別子／ポート番号対応テーブル
７        インタフェース
８        エンジン部
９        ＨＴＴＰクライアント
１０      ネットワーク
【図１】
2005092811.tif 000003
【図２】
2005092811.tif 000004
【図３】
2005092811.tif 000005
【図４】
2005092811.tif 000006
【図５】
2005092811.tif 000007
【図６】
2005092811.tif 000008
【図７】
2005092811.tif 000009
【図８】
2005092811.tif 000010
【図９】
2005092811.tif 000011
【図１０】
2005092811.tif 000012
【図１１】
2005092811.tif 000013
【図１２】
2005092811.tif 000014
【図１３】
2005092811.tif 000015