(57)【特許請求の範囲】
【請求項１】
異なる動作ポートを使用する第１及び第２のＷｅｂアプリケーションをポート単位で制御する情報処理装置であって、
ポート情報を記憶する記憶手段と、
前記第１及び第２のＷｅｂアプリケーションにアクセスするためのポートが示されたポート情報を記憶するように前記記憶手段を制御する制御手段と、
前記第１のＷｅｂアプリケーションの起動後、前記第１のＷｅｂアプリケーションが前記第２のＷｅｂアプリケーションから前記第１のＷｅｂアプリケーションに対して前記第２のＷｅｂアプリケーションのリンクを登録するための要求を受信したとき、前記第２のＷｅｂアプリケーションにアクセスするためのポート情報を前記記憶手段から取得する取得手段と、
前記取得されたポート情報が正常か否かを判別する判別手段と、
前記取得されたポート情報が正常であると判別された場合、前記取得手段により取得されたポート情報を含む、前記第２のＷｅｂアプリケーションにアクセスするためのＵＲＬを生成する生成手段と、
前記生成手段により生成された前記ＵＲＬを前記第１のＷｅｂアプリケーションに登録する登録手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記第１及び第２のＷｅｂアプリケーションの一つにアクセスするためのポートが変更されたときは、前記変更されたポートが示されたポート情報を記憶するように前記記憶手段を制御することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記生成手段は、前記ＵＲＬを相対パスで生成することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記生成手段は、前記第１のＷｅｂアプリケーションが動作する装置のＩＰアドレスに応じて前記ＵＲＬを生成することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記リンクは、前記第１のＷｅｂアプリケーションのＷｅｂページから、前記第２のＷｅｂアプリケーションのＷｅｂページに遷移するためのリンクであることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第１のＷｅｂアプリケーションのＷｅｂページには、前記情報処理装置の状況情報や消耗品情報が前記リンクとともに表示されることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
異なる動作ポートを使用する第１及び第２のＷｅｂアプリケーションをポート単位で制御する情報処理装置の制御方法であって、
前記第１及び第２のＷｅｂアプリケーションにアクセスするためのポートが示されたポート情報を記憶するように前記情報処理装置の記憶手段を制御する制御ステップと、
前記第１のＷｅｂアプリケーションの起動後、前記第１のＷｅｂアプリケーションが前記第２のＷｅｂアプリケーションから前記第１のＷｅｂアプリケーションに対して前記第２のＷｅｂアプリケーションのリンクを登録するための要求を受信したとき、前記第２のＷｅｂアプリケーションにアクセスするためのポート情報を前記記憶手段から取得する取得ステップと、
前記取得されたポート情報が正常か否かを判別する判別ステップと、
前記取得されたポート情報が正常であると判別された場合、前記取得ステップにより取得されたポート情報を含む、前記第２のＷｅｂアプリケーションにアクセスするためのＵＲＬを生成する生成ステップと、
前記生成ステップにより生成された前記ＵＲＬを前記第１のＷｅｂアプリケーションに登録する登録ステップと
を有することを特徴とする制御方法。
【請求項８】
異なる動作ポートを使用する第１及び第２のＷｅｂアプリケーションをポート単位で制御する情報処理装置の制御方法をコンピュータに実行させるプログラムであって、
前記制御方法は、
前記第１及び第２のＷｅｂアプリケーションにアクセスするためのポートが示されたポート情報を記憶するように前記情報処理装置の記憶手段を制御する制御ステップと、
前記第１のＷｅｂアプリケーションの起動後、前記第１のＷｅｂアプリケーションが前記第２のＷｅｂアプリケーションから前記第１のＷｅｂアプリケーションに対して前記第２のＷｅｂアプリケーションのリンクを登録するための要求を受信したとき、前記第２のＷｅｂアプリケーションにアクセスするためのポート情報を前記記憶手段から取得する取得ステップと、
前記取得されたポート情報が正常か否かを判別する判別ステップと、
前記取得されたポート情報が正常であると判別された場合、前記取得ステップにより取得されたポート情報を含む、前記第２のＷｅｂアプリケーションにアクセスするためのＵＲＬを生成する生成ステップと、
前記生成ステップにより生成された前記ＵＲＬを前記第１のＷｅｂアプリケーションに登録する登録ステップと
を有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びその制御方法、並びにプログラムに関し、特に、ＷｅｂアプリケーションにアクセスするためのＵＲＬリンクを登録する情報処理装置及びその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
現行のＭＦＰ（Multi-Functional Peripheral）は、ネットワーク上の複数の外部機器からの要求に応じて処理を実行するＷｅｂサーバ機能を備えている。Ｗｅｂサーバ機能を備えるＭＦＰは、ＨＴＴＰ（Hyper Text Transfer Protocol）に従って受信した処理要求に応じて、ＭＦＰ上のＷｅｂアプリケーションを実行する。
【０００３】
そのＷｅｂアプリケーションが生成するＨＴＭＬ（HyperText Markup Language）の中には、別のＷｅｂページへのＵＲＬ（Uniform Resource Locator）リンクが記入されていることは少なくない。なおＵＲＬとは、一般的に、ＩＰアドレス（又はホスト名）、ポート番号、ファイルパス等から構成されるものである（例えば、ＲＦＣ１７３８を参照）。
【０００４】
これに関し、リンク先のＵＲＬをＩＰアドレスやホスト名などを参考に変換する技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２８５０５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＭＦＰのようなリソースの限られた装置では、セキュリティ上の問題を考慮して、複数のＷｅｂアプリケーションが様々なポートで動作している。
【０００７】
そして、あるＷｅｂアプリケーションから、異なるＷｅｂアプリケーションにＵＲＬリンクを登録するといった場合、ＭＦＰのような内部で複数のＷｅｂアプリケーションが動作する装置では、ポート番号等を省略した相対パスでの指定が一般的である。
【０００８】
この相対パス指定は、Ｗｅｂアプリケーションにアクセスするためのポートがすべて同一である場合に成り立つものである。
【０００９】
つまり、動作ポートの異なるＷｅｂアプリケーション間で相対パス指定によりリンク登録を行うと、誤ったリンク先へリンクするか、リンクエラーとなってしまう可能性がある。このため、従来技術のような、ＩＰアドレスやホスト名などの粒度の大きい単位でのＵＲＬ変換では、ポート単位で制御が必要とされる環境においては適用できないといった課題がある。
【００１０】
上記目的を達成するために、請求項１の情報処理装置は、異なる動作ポートを使用する第１及び第２のＷｅｂアプリケーションをポート単位で制御する情報処理装置であって、ポート情報を記憶する記憶手段と、前記第１及び第２のＷｅｂアプリケーションにアクセスするためのポートが示されたポート情報を記憶するように前記記憶手段を制御する制御手段と、前記第１のＷｅｂアプリケーションの起動後、前記第１のＷｅｂアプリケーションが前記第２のＷｅｂアプリケーションから前記第１のＷｅｂアプリケーションに対して前記第２のＷｅｂアプリケーションのリンクを登録するための要求を受信したとき、前記第２のＷｅｂアプリケーションにアクセスするためのポート情報を前記記憶手段から取得する取得手段と、前記取得されたポート情報が正常か否かを判別する判別手段と、前記取得されたポート情報が正常であると判別された場合、前記取得手段により取得されたポート情報を含む、前記第２のＷｅｂアプリケーションにアクセスするためのＵＲＬを生成する生成手段と、前記生成手段により生成された前記ＵＲＬを前記第１のＷｅｂアプリケーションに登録する登録手段とを有することを特徴とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、請求項１の情報処理装置は、情報を記憶する記憶手段を備えた情報処理装置であって、Ｗｅｂアプリケーションにアクセスするためのポートが示されたポート情報を記憶するように前記記憶手段を制御する記憶制御手段と、前記Ｗｅｂアプリケーションにアクセスするためのポートを前記記憶手段より取得する取得手段と、前記取得手段により取得されたポートを含む、前記ＷｅｂアプリケーションにアクセスするためのＵＲＬを生成する生成手段と、前記生成手段により生成された前記ＷｅｂアプリケーションにアクセスするためのＵＲＬを、他のＷｅｂアプリケーションからのリンクとして登録する登録手段とを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ポート単位で制御するＷｅｂアプリケーションにアクセスするためのＵＲＬを生成可能な情報処理装置及びその制御方法、並びにプログラムを提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係るＭＦＰを含む情報処理システムの概略構成を示す図である。
【図２】図１におけるＭＦＰのハードウェア構成を示す図である。
【図３】図１におけるＭＦＰの機能構成を示す図である。
【図４】図３におけるアプリケーション管理部により参照される起動リストの一例を示す図である。
【図５】図３におけるアプリケーション管理部で管理されているサーブレットの登録リストの一例を示す図である。
【図６】ＵＲＬリンクの登録に関する構成を示す図である。
【図７】ＵＲＬリンクが登録されているＷｅｂアプリケーションＡの一例を示す図である。
【図８】図２におけるＣＰＵにより実行される起動処理の手順を示すフローチャートである。
【図９】図２におけるＣＰＵにより実行される登録処理の手順を示すフローチャートである。
【図１０】ＷｅｂアプリケーションＢからＷｅｂアプリケーションＡに対してＵＲＬリンク登録を実行した場合の登録処理シーケンスを示す図である。
【図１１】登録処理シーケンスをＷｅｂアプリケーションＣ及びＷｅｂアプリケーションＤから行った結果、ＵＲＬ補間部によって生成されるＵＲＬを示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について図面を参照しながら詳述する。なお、本実施の形態では、本発明に係る情報処理装置をＭＦＰ（Multi-Functional Peripheral）に適用した実施の形態について説明する。
【００１５】
図１は、本発明の実施の形態に係るＭＦＰ１０１を含む情報処理システムの概略構成を示す図である。
【００１６】
図１において、ネットワーク（ＬＡＮ）１０４には、ＭＦＰ１０１と、外部機器１０２，１０３とが相互通信可能に接続される。本実施の形態では、ＭＦＰ１０１が、外部機器１０２、１０３等から通知されるＨＴＴＰ（Hyper Text Transfer Protocol）に従った処理要求（以下、「ＨＴＴＰ要求」という）によって、後述する処理を実行する。また、ＭＦＰ１０１、及び外部機器１０２，１０３には、同図に示されるようにＩＰアドレスが設定されている。
【００１７】
図２は、図１におけるＭＦＰ１０１のハードウェア構成を示す図である。
【００１８】
図２において、ＭＦＰ１０１は、コントロールユニット２００、操作部２１０、スキャナ２２０、及びプリンタ２３０を備える。
【００１９】
また、コントロールユニット２００は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、操作部Ｉ／Ｆ２０４、スキャナＩ／Ｆ２０５、プリンタＩ／Ｆ２０６、及びネットワークＩ／Ｆ２０７を備える。
【００２０】
ＣＰＵ２０１は、ＭＦＰ１０１全体を統括的に制御する。ＲＡＭ２０２は、ＣＰＵ２０１のワークエリア、受信バッファ、画像描画等に使用され、情報を記憶する記憶手段であり、ランダム・アクセス・メモリである。
【００２１】
ＲＯＭ２０３は、ＣＰＵ２０１が実行するソフトウェアプログラムやフォントデータを格納するリード・オンリ・メモリである。またＭＦＰ１０１は、不図示のハードディスクドライブを備えている。このハードディスクドライブには、オペレーティングシステムやシステムソフトウェア、及び画像データが記憶される。
【００２２】
操作部Ｉ／Ｆ２０４は、操作部２１０に対するコントロールユニット２００のインタフェースである。スキャナＩ／Ｆ２０５は、スキャナ２２０に対するコントロールユニット２００のインタフェースである。プリンタＩ／Ｆ２０４は、プリンタ２３０に対するコントロールユニット２００のインタフェースである。ネットワークＩ／Ｆ２０７は、ＭＦＰ１０１をネットワーク１０４に接続するためのインタフェースである。
【００２３】
操作部２１０は、各種スイッチやボタン、並びにメッセージ表示用の液晶表示部で構成される。プリンタ２３０は、画像データに従って記録紙に印刷を行う。スキャナ２２０は、印刷されたドキュメントなどを読み込んで電子データに変換する。
【００２４】
図３は、図１におけるＭＦＰ１０１の機能構成を示す図である。
【００２５】
図３において説明される各コンポーネントは、ソフトウェア、ハードウェア、又は、ソフトウェアとハードウェアとの組み合わせとして実現することができる。
【００２６】
ＭＦＰ１０１は、アプリケーション起動部３０１、アプリケーション管理部３０２、ＨＴＴＰサーバアプリケーション３０３、及びＨＴＴＰＳサーバアプリケーション３０４を備える。
【００２７】
アプリケーション起動部３０１は、例えば、ＭＦＰ１０１への電源投入時やユーザからの起動指示に応じて、アプリケーション管理部３０２からの指示に従ってアプリケーションプログラムをＲＯＭ２０３等からロードして起動する。このアプリケーションはＷｅｂアプリケーションであり、ポート単位で制御される。このポートはＷｅｂアプリケーションにアクセスするためのポートである。
【００２８】
また、アプリケーション起動部３０１は、外部機器１０２，１０３からのＨＴＴＰ要求を受信すると、アプリケーション管理部３０２に対して実行すべきアプリケーションに関する情報を要求する。
【００２９】
なお、ＨＴＴＰ要求には、Ｗｅｂアプリケーションを識別する識別情報とポート番号で示すＵＲＬが含まれる。本実施形態において、ＵＲＬは、「ｈｔｔｐ：／／ＭＦＰ１０１のＩＰアドレス：ポート番号／サーブレットのパス」の形式で記述されている。
【００３０】
ＭＦＰ１０１は、上述のＵＲＬを含むＨＴＴＰ要求を受信すると、指定のポート番号に割り当てられたアプリケーションによってサーブレットが呼び出されることになる。即ち、ＨＴＴＰ要求は、指定されたポート番号に登録された指定されたアプリケーションの実行をリクエストする通知である。
【００３１】
ここで、サーブレットとは、アプリケーションに含まれるプログラムコードの一部であり、一般的に１つの機能を実現する単位毎に設けられる。即ち、アプリケーションは、複数のサーブレットを含んで構成されてもよい。
【００３２】
アプリケーション管理部３０２は、アプリケーション起動部３０１からの要求に応答して、起動すべきアプリケーションと、当該アプリケーションプログラムの格納先、例えば、ＲＯＭ２０３のアドレスを通知する。
【００３３】
また、アプリケーション管理部３０２は、例えば、ＭＦＰ１０１の起動時に、起動リストを参照して、起動順序と、起動アプリケーションの格納先との情報を取得する。ここで、起動リストとは、アプリケーションの起動順序と、各アプリケーションのプログラムコードの格納先との情報を有する。
【００３４】
なお、起動リストは、各アプリケーションのプログラムヘッダ部に定義された情報に従って、ＭＦＰ１０１の起動時にアプリケーション管理部３０２によって生成されてもよい。
【００３５】
ＨＴＴＰサーバアプリケーション３０３は、通常のＨＴＴＰサーバアプリケーションを実行する。ＨＴＴＰサーバアプリケーション３０３により呼び出されるサーブレットを、サーブレットＡ，Ｂとしている。
【００３６】
ＨＴＴＰＳサーバアプリケーション３０４は、ＳＳＬソケットを使用したＨＴＴＰサーバアプリケーションを実行する。ＨＴＴＰＳサーバアプリケーション３０４により呼び出されるサーブレットを、サーブレットＣ，Ｄとしている。
【００３７】
アプリケーション起動部３０１は、ＭＦＰ１０１の起動時に上記起動リストが生成されるタイミングで、各アプリケーションの例えばプログラムヘッダ部に定義された情報に従って、各ポート番号に使用するサーブレットを登録する。
【００３８】
図４は、図３におけるアプリケーション管理部３０２により参照される起動リストの一例を示す図である。
【００３９】
図４において、起動リストは、アプリケーション名４０１、及び各アプリケーションの起動順序４０２を示すものとなっている。例えば、図４においては、ＨＴＴＰサーバアプリケーションが１番目に起動され、ＨＴＴＰＳサーバアプリケーションが２番目に起動される。
【００４０】
その後、サーブレットＡを含むＷｅｂアプリケーション、サーブレットＢを含むＷｅｂアプリケーション、サーブレットＣを含むＷｅｂアプリケーション、サーブレットＤを含むＷｅｂアプリケーションが順に起動される。
【００４１】
それぞれのＷｅｂアプリケーションを、ＷｅｂアプリケーションＡ、ＷｅｂアプリケーションＢ、ＷｅｂアプリケーションＣ、ＷｅｂアプリケーションＤと称することにする。      
【００４２】
このように、本実施の形態では、サーブレットを含むアプリケーションは、ＨＴＴＰサーバアプリケーション３０３及びＨＴＴＰＳサーバアプリケーション３０４の起動後に起動されるように起動リストで定義される。
【００４３】
なお、図４には図示していないが、起動リストには、さらに、プログラムコードの格納先がそれぞれのアプリケーションに対応付けられて定義される。
【００４４】
また、サーブレットを含むアプリケーションは、その起動時にＨＴＴＰサーバアプリケーション３０３又はＨＴＴＰＳサーバアプリケーション３０４にサーブレットの登録を要求する。登録されるとアプリケーション管理部３０２で管理されている登録リストに記載されることとなる。
【００４５】
図５は、図３におけるアプリケーション管理部３０２で管理されているサーブレットの登録リストの一例を示す図である。
【００４６】
図５において、登録リストは、サーブレット６０１は登録するサーブレット名を示す。また、ポート番号６０２は登録するサーブレットに割り当てられるポート番号を示す。なお、同図に示されるポート番号８０はＨＴＴＰ用のポート番号であり、ポート番号４４３および８４４３はＨＴＴＰＳ用のポート番号である。
【００４７】
図５では、ポート番号８０にサーブレットＡ，Ｄが登録され、ポート番号４４３にサーブレットＢが登録され、ポート番号８４４３にサーブレットＣが登録されている。
【００４８】
この登録リストは、ＲＡＭ２０２や、図示しないハードディスクドライブまたは不揮発性の記憶装置に記憶されている。
【００４９】
図６は、ＵＲＬリンクの登録に関する構成を示す図である。
【００５０】
図６においては、例としてＷｅｂアプリケーションＡへのＵＲＬリンクの登録に関する構成が示されている。
【００５１】
リンク登録サービス８０１は、リンク登録の要求元ＷｅｂアプリケーションのＵＲＬをＷｅｂアプリケーションＡに登録するものである。
【００５２】
このリンク登録サービス８０１は、リンク登録部８０２、ＵＲＬ補間部８０３、及びサーブレット動作ポート番号確認部８０４を備える。
【００５３】
リンク登録部８０２は、要求元ＷｅｂアプリケーションのＵＲＬをＷｅｂアプリケーションＡに関連付ける。関連付けとは、ＷｅｂアプリケーションＡが生成するＨＴＭＬに上述したリンク情報を記載することである。
【００５４】
ＵＲＬ補間部８０３は、要求元Ｗｅｂアプリケーションが動作するポートとＭＦＰ１０１が動作するＩＰアドレスと動作しているサーブレット名からＵＲＬを生成する。
【００５５】
サーブレット動作ポート番号確認部８０４は、後述するサーバ管理部８０５に対して、要求元Ｗｅｂアプリケーションが動作しているポート番号を問い合わせる。
【００５６】
サーバ管理部８０５は、ＨＴＴＰサーバアプリケーション３０３及びＨＴＴＰＳサーバアプリケーション３０４の上で動作するサーブレットの情報を管理している。
【００５７】
このサーバ管理部８０５は、サーブレット動作ポート番号返答部８０６とサーブレット動作ポートテーブル８０７を備える。
【００５８】
サーブレット動作ポート番号返答部８０６は、サーブレット動作ポート番号確認部８０４の要求を受けて、要求元Ｗｅｂアプリケーションに含まれるサーブレットが動作するポート番号を返答する。この返答の際に、サーブレット動作ポート番号返答部８０６は、サーブレット動作ポートテーブル８０７を参照する。ここで、サーブレット動作ポートテーブル８０７は、図５で示した、登録リストをＲＡＭ２０２に保持している。
【００５９】
なお、図６では、登録先のＷｅｂアプリケーションをＷｅｂアプリケーションＡとして説明しているが、これに限定するものではない。例えば、その他のＷｅｂアプリケーションや、操作部２１０で操作できるアプリケーションであってもかまわない。
【００６０】
図７は、ＵＲＬリンクが登録されているＷｅｂアプリケーションＡの一例を示す図である。
【００６１】
図７において、ＷｅｂアプリケーションＡであるＷｅｂブラウザ７０１は、ＭＦＰ１０１のデバイス状況情報、消耗品情報を表示する機能の他に、ＭＦＰ１０１で動作する別のＷｅｂアプリケーションへのリンク情報を有する。
【００６２】
また、Ｗｅｂブラウザ７０１にはＷｅｂブラウザ７０１が参照しているＵＲＬリンク７０２が表示される。なお、ここで指定されているＵＲＬは「ｈｔｔｐ：／／１９２．１６８．１００．ＸＸ：８０／サーブレットＡ」である。
【００６３】
さらに、Ｗｅｂブラウザ７０１にはサーブレットＢへのＵＲＬリンク７０３、サーブレットＣへのＵＲＬリンク７０４、サーブレットＤへのＵＲＬリンク７０５が表示される。サーブレットＢへのＵＲＬリンク７０３はＨＴＭＬで記載されるものであり、具体的に示すと、以下の通りである。
<a href=http://192.168.100.XX:443／サーブレットＢ>サーブレットＢへのリンク</a>
Ｗｅｂブラウザ７０１の使用者は、上記リンク情報を選択することで、サーブレットＢが生成するＷｅｂページへ遷移できる。ここで示した、各サーブレットへのリンク情報は、後述するリンク情報の登録処理に従って逐次追加できる。
【００６４】
図８は、図２におけるＣＰＵ２０１により実行される起動処理の手順を示すフローチャートである。
【００６５】
この起動処理は、ＣＰＵ２０１がＲＯＭ２０３に格納された実行プログラムを読み出して実行することにより実現される。また、以下のフローチャートは、ＭＦＰ１０１への電源投入やユーザの起動処理開始指示などによって実行される。
【００６６】
図８において、アプリケーション管理部３０２は、ＲＯＭ２０３に予め格納されている起動リストを取得する（ステップＳ５０１）。さらに、アプリケーション管理部３０２は、取得した起動リストに従ってアプリケーション起動部３０１に対して起動するアプリケーションの情報を通知する。
【００６７】
次いで、アプリケーション起動部３０１は、アプリケーション管理部３０２から指示された起動順序に従って起動するアプリケーションのプログラムコードをＲＯＭ２０３からＲＡＭ２０２にロードする（ステップＳ５０２）。
【００６８】
続いて、アプリケーション起動部３０１は、ＲＡＭ２０２にロードしたプログラムコードを実行することにより、アプリケーションを起動する（ステップＳ５０３）。
【００６９】
次いで、アプリケーション起動部３０１は、サーブレットの登録が必要であるか否かを判別する（ステップＳ５０４）。具体的には、当該アプリケーションのプログラムを実行することにより、当該プログラムコードからサーブレットを登録するＡＰＩが呼び出されていれば、アプリケーション起動部３０１はサーブレットを登録する必要があると判別する。なお、上記ＡＰＩは、Application Programming Interfaceである。
【００７０】
ステップＳ５０４の判別の結果、サーブレットの登録が必要でないとき（ステップＳ５０４でＮＯ）、ステップＳ５０６に進む。一方、ステップＳ５０４の判別の結果、サーブレットの登録が必要であるとき（ステップＳ５０４でＹＥＳ）、アプリケーション起動部３０１は、サーブレットを指定されたポート番号に登録する（ステップＳ５０５）。このステップＳ５０５は、Ｗｅｂアプリケーションにアクセスするためのポートが示されたポート情報を記憶するように記憶手段を制御する記憶制御手段に対応する。
【００７１】
次いで、アプリケーション起動部３０１は、起動リストに定義された全てのアプリケーションを起動したか否かを判別する（ステップＳ５０６）。ステップＳ５０６の判別の結果、全てのアプリケーションを起動したとき（ステップＳ５０６でＹＥＳ）、本処理を終了する。一方、全てのアプリケーションを起動していないとき（ステップＳ５０６でＮＯ）、ステップＳ５０２に戻る。
【００７２】
なお、図８では、アプリケーション起動部３０１が実行したプログラムコードから上記ＡＰＩが呼び出されたか否かに応じて、サーブレットを登録する方法について説明した。
【００７３】
しかし、本発明はこれに限定されず、例えばアプリケーション管理部３０２が予め登録リストを作成し、アプリケーションの起動タイミングで上記起動リストとともにアプリケーション起動部３０１にサーブレットの登録リストを渡してもよい。この場合、アプリケーション起動部３０１は、渡されたサーブレットの登録リストを用いてサーブレットの登録を行う。
【００７４】
図９は、図２におけるＣＰＵ２０１により実行される登録処理の手順を示すフローチャートである。
【００７５】
この登録処理は、ＣＰＵ２０１がＲＯＭ２０３に格納された実行プログラムを読みだして実行することにより実現される。また、以下のフローチャートは、ＷｅｂアプリケーションからＵＲＬリンク登録要求に基づいて実行される。
【００７６】
図９において、リンク登録サービス８０１は、サーブレット動作ポート番号確認部８０４を介して、リンク登録の要求元Ｗｅｂアプリケーションから指定されたサーブレットの動作ポート番号をサーバ管理部８０５に問い合わせる（ステップＳ９０１）。
【００７７】
次いで、サーバ管理部８０５は、サーブレット動作ポート番号返答部８０６を介して、サーブレット動作ポートテーブル８０７を参照する（ステップＳ９０２）。このステップＳ９０２は、Ｗｅｂアプリケーションにアクセスするためのポートを記憶手段より取得する取得手段に対応する。
【００７８】
参照した結果、対応するサーブレットが存在するか否か判別する（ステップＳ９０３）。ステップＳ９０３の判別の結果、対応するサーブレットが存在しないとき（ステップＳ９０３でＮＯ）、エラー値（例えば「−１」）を返し（ステップＳ９０５）、ステップＳ９０６に進む。
【００７９】
一方、ステップＳ９０３の判別の結果、対応するサーブレットが存在するとき（ステップＳ９０３でＹＥＳ）、サーバ管理部８０５は、指定されたサーブレットの動作ポート番号をリンク登録サービス８０１に通知する（ステップＳ９０４）。例えば、サーブレットＢが指定されれば、動作ポート番号として４４３が通知される。
【００８０】
次いで、リンク登録サービス８０１は、サーバ管理部８０５より通知された動作ポート番号が正常か否かを判別する。
【００８１】
ステップＳ９０６の判別の結果、動作ポート番号が正常ではないとき（ステップＳ９０６でＮＯ）、リンク登録の失敗を要求元Ｗｅｂアプリケーションに通知して（ステップＳ９１０）、本処理を終了する。動作ポート番号が正常か否かは、上述したようにエラー値が−１であり、正常な動作ポート番号は正の値であるので、返された値の符号を用いて判別することができる。
【００８２】
一方、ステップＳ９０６の判別の結果、動作ポート番号が正常であるとき（ステップＳ９０６でＹＥＳ）、リンク登録サービス８０１は、ＵＲＬ補間部８０３を介して、リンク登録するＵＲＬを生成する（ステップＳ９０７）。ステップＳ９０７は、取得手段により取得されたポートを含む、ＷｅｂアプリケーションにアクセスするためのＵＲＬを生成する生成手段に対応する。
【００８３】
具体的に説明すると、例えば、ＷｅｂアプリケーションＡに対してＷｅｂアプリケーションＢのサーブレットＢのリンク登録を実行した場合、「http://192.168.100.XX:443/サーブレットＢ」が生成されることになる。
【００８４】
次いで、リンク登録部８０２は、生成されたＵＲＬをリンク登録サービス８０１が動作するＷｅｂアプリケーションに登録し（ステップＳ９０８）、リンク登録の成功を要求元Ｗｅｂアプリケーションに通知して（ステップＳ９０９）、本処理を終了する。
【００８５】
上記ステップＳ９０８において、リンク登録部８０２は、生成されたＵＲＬを、「a herf=http://192.168.100.XX:443/サーブレットＢ>サーブレットＢへのリンク</a>」としてリンク登録する。
【００８６】
以上のように、登録処理では、要求元Ｗｅｂアプリケーションからサーブレット名をサーバ管理部８０５に通知することで、適切なＵＲＬを生成している。なお、要求元Ｗｅｂアプリケーションからサーブレット名に加えて動作ポートを意図的に通知している場合は、サーバ管理部８０５へ問い合わせを行わずにＵＲＬを生成してもかまわない。
【００８７】
図１０は、ＷｅｂアプリケーションＢからＷｅｂアプリケーションＡに対してＵＲＬリンク登録を実行した場合の登録処理シーケンスを示す図である。
【００８８】
なお、サーブレットＢは、図５に示されるように既にＨＴＴＰＳサーバに登録されているものとする。
【００８９】
ＷｅｂアプリケーションＢは、ＷｅｂアプリケーションＡのリンク登録サービス８０１に、サーブレットＢのリンク登録を要求する（ステップＳ１００１）。次いで、リンク登録サービス８０１は、サーブレットＢの動作ポート番号を、サーバ管理部８０５に対して問い合わせる。このとき、サーブレット動作ポート番号確認部８０４は、サーブレットＢの存在をサーバ管理部８０５に確認する。
【００９０】
サーバ管理部８０５は、サーブレットＢが動作しているポートを返答するようにサーブレット動作ポート番号返答部８０６を呼び出す。サーブレット動作ポート番号返答部８０６は、サーブレット動作ポートテーブル８０７を参照する（ステップＳ８０７）。
【００９１】
参照の結果、ここでは、対応するサーブレットＢの動作ポートが存在するものとし、サーバ管理部８０５は、動作ポート番号として４４３をリンク登録サービス８０１に返す（ステップＳ１００４）。
【００９２】
リンク登録サービス８０１は、ＵＲＬ補間部８０３を呼び出し、ＷｅｂアプリケーションＡに登録するＵＲＬを生成する（ステップＳ１００５）。このとき、ＵＲＬ補間部８０３は、図９で説明した「http://192.168.100.XX:443/サーブレットＢ」が生成される。
【００９３】
次いで、リンク登録部８０２は、生成されたＵＲＬを、上述したように「a herf=http://192.168.100.XX:443/サーブレットＢ>サーブレットＢへのリンク</a>」としてリンク登録する（ステップＳ１００６）。
【００９４】
次いで、リンク登録サービス８０１は、サーブレットＢのリンク登録の成功をＷｅｂアプリケーションＢへ通知して（ステップＳ１００７）、本処理を終了する。
＜リンク登録するサーブレット名と対応するＵＲＬ＞
図１１は、登録処理シーケンスをＷｅｂアプリケーションＣ及びＷｅｂアプリケーションＤから行った結果、ＵＲＬ補間部８０３によって生成されるＵＲＬを示す図である。
【００９５】
サーブレット名１１０１は、ＷｅｂアプリケーションＡに登録されるサーブレット名を示す。ＵＲＬ１１０２は、ＵＲＬ補間部８０３によって生成された各サーブレットのＵＲＬを示す。各サーブレットの対応するＵＲＬを参照すると、ＵＲＬは、以下の形式で生成されることがわかる。
【００９６】
http://リンク先のＷｅｂアプリケーションの動作するＩＰアドレス:リンク元のＷｅｂアプリケーションのサーブレットが動作するポート／サーブレット名
以上で説明したように、サーブレットのＵＲＬを別のＷｅｂアプリケーション上にリンクするＷｅｂアプリケーションは、ＵＲＬ補間部８０３によって、ＵＲＬが適切に補正されてリンク登録できる。
【００９７】
このため、登録先Ｗｅｂアプリケーションの動作ポート番号に関わらず、要求元Ｗｅｂアプリケーションからは意識せずにＵＲＬリンクを登録できる。
【００９８】
この結果、要求元Ｗｅｂアプリケーションは、登録先Ｗｅｂアプリケーションの動作ポートがセキュリティ強化のために、ＨＴＴＰからＨＴＴＰＳに変わったとしても、アプリケーションを作りかえることなく流用できるため、アプリケーションの可搬性が増す。
【００９９】
また、上記実施の形態において、Ｗｅｂアプリケーションにアクセスするためのポートが変更されたときは、変更されたポートが示されたポート情報を記憶するようにしてもよい。
【０１００】
さらに、ＵＲＬを、ポートを含む相対パスで生成するようにしてもよい。また、本実施の形態では、Ｗｅｂアプリケーションが動作する装置のＩＰアドレスに応じてＵＲＬを生成する。
【０１０１】
（他の実施の形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１０２】
１０１  ＭＦＰ
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
３０１  アプリケーション起動部
３０２  アプリケーション管理部
３０３  ＨＴＴＰサーバアプリケーション
３０４  ＨＴＴＰＳサーバアプリケーション
【図１】
0005893298.tif 000002
【図２】
0005893298.tif 000003
【図３】
0005893298.tif 000004
【図４】
0005893298.tif 000005
【図５】
0005893298.tif 000006
【図６】
0005893298.tif 000007
【図７】
0005893298.tif 000008
【図８】
0005893298.tif 000009
【図９】
0005893298.tif 000010
【図１０】
0005893298.tif 000011
【図１１】
0005893298.tif 000012