"ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムであって、ポートレットの実行プログラム内に、他のポートレットと通信を行うプログラムを検出する検出コードを埋め込む検出コード埋込手段と、前記管理者端末からポータル画面にポートレットを配置する指示を受信する受信手段と、当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得する依存情報取得手段と、前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前記判定を行う判定手段と、前記判定手段で全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供する提供手段と、を備えることを特徴とするポータルシステム。前記ポータル画面を生成する場合、ポートレットによって生成されるコンテンツが参照する他のコンテンツを有する他のポートレットを示す参照情報を取得する参照情報取得手段を備え、前記依存情報は、前記参照情報取得手段により取得する参照情報を含む、ことを特徴とする請求項1記載のポータルシステム。前記検出コード埋込手段は、前記他のポートレットと通信を行うプログラムの直後に前記検出コードを埋め込む、ことを特徴とする請求項1又は2記載のポータルシステム。ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムの依存関係を有するポートレットの配置方法であって、前記管理者端末からポータル画面にポートレットを配置する指示を受信するステップと、当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた他のポートレットと通信を行うプログラムを検出する検出コードに基づいて、他のポートレットとの依存情報を取得するステップと、前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前記判定を行うステップと、前記ステップにおいて全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供するステップと、を有することを特徴とする依存関係を有するポートレットの配置方法。しかしながら、既述のポータルシステムでは、手作業でポートレットの依存関係をシステムに登録する必要があるため、登録漏れや登録誤りを起こす可能性がある。また、ポータル管理者がポートレット開発者及びポートレット設計書から得た情報に基づいて、ポートレット間の依存関係を逐一把握しなければならないため、ポータル管理者の負担も大きい。さらに、ポートレット開発者は依存関係を有するポートレットが同じポータル画面上に存在しないケースを想定して開発する必要があったため、ポートレット開発者にとっても負担が大きかった。一方、特許文献1記載の技術は、関連性を有するポートレットを全て適切に表示するものではない。本発明は、上記事情に鑑みてなされたものであり、その目的は、ポートレットをポータル画面に配置する場合、当該ポートレットと依存関係を有する全てのポートレットを自動的に当該ポータル画面に配置することができるポータルシステム及び依存関係を有するポートレットの配置方法を提供することにある。本発明は、ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムであって、ポートレットの実行プログラム内に、他のポートレットと通信を行うプログラムを検出する検出コードを埋め込む検出コード埋込手段と、管理者端末からポータル画面にポートレットを配置する指示を受信する受信手段と、当該ポータル画面を生成する場合、指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得する依存情報取得手段と、依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットがポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する依存情報に基づいて、再度、前記判定を判定手段と、判定手段で全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供する提供手段とを備えることを特徴とする。本発明によると、ポートレットをポータル画面に配置する場合、当該ポートレットと依存関係を有する全てのポートレットを自動的に当該ポータル画面に配置することができるポータルシステム及び依存関係を有するポートレットの配置方法を提供できる。以下、本発明の実施の形態について図面を参照して説明する。図1は、ポータルシステムの構成を示す図である。同図に示すように、ポータルシステム100は、ポートレットの配備を行う運用端末20と、プログラム制御により動作するポータルサーバ30と有している。また、ポータルサーバ30は、ウェブブラウザ10aを装備した管理者端末10と、ウェブブラウザ11aを装備したユーザ端末11と、それぞれ通信可能に接続されている。運用端末20は、プログラム制御により動作するポートレット間通信の検出コード埋め込み手段21と、プログラム制御により動作する配備手段22と、後述するポートレットコンテナ32上でプログラム制御により動作するポートレット23と、検出コード埋め込み手段21によってポートレット23の実行プログラムに埋め込まれる検出コード24と、検出コード24を挿入した後のポートレット25と、を有している。ポータルサーバ30は、プログラム制御により動作する、ポータル画面生成手段31、ポートレットコンテナ32、ポートレット追加手段33、ポータル画面生成分析手段34及び依存関係解決手段35、並びに、補助記憶装置又は記憶媒体に格納された画面レイアウト情報36及び依存関係情報37を有している。更に、ポータル画面生成分析手段34は、コンテンツ分析手段38及びポータル画面生成手段39を有しており、ポートレットコンテナ32は、運用端末20の配備手段22によって配備されるポートレット及び検出コード24が挿入されたポートレットを有している。なお、図1に示すポートレットコンテナ32には、ポートレットA、検出コード24を含むポートレットA以下、ポートレットA ́、ポートレットB及び検出コード24を含むポートレットB以下、ポートレットB ́を有している。検出コード埋め込み手段21は、図2に示すように、ポートレット23の実行プログラムを分析し、ポートレット間通信命令のリストの直後に検出コード24を機械的に埋め込み、検出コード24が挿入されたポートレット25を生成する。この検出コード24は、ポートレット間でのメッセージ通信時に動作し、メッセージ送信元のポートレットと受信先のポートレットを特定する情報をポータルサーバ30に通知するプログラムコードである。なお、既述のコード埋め込みに関する技術は、従来よりあるものと同様であるため詳細な説明は省略する。配備手段22は、ポートレット23と、検出コード24を挿入したポートレット25を、ポータルサーバ30のポートレットコンテナ32へ配備する。ユーザ端末11のウェブブラウザ11aにポータル画面を表示する場合、ユーザは、ユーザ端末11のウェブブラウザ11aを介して、ポータルサーバ30のポータル画面生成手段31に対して所定のリクエストを送信する。ポータル画面生成手段31は、ユーザ端末11からリクエストを受け取ると、画面レイアウト情報36参照:図3から、ポータル画面に配置するポートレットの情報と、そのレイアウト情報を取得する。そして、ポータル画面生成手段31は、ポートレットコンテナ32に対して、配置対象であるポートレットの実行要求を行う。画面レイアウト情報36は、図3に示すように、ポータル画面に表示するポートレット名とポートレット配置位置との関係を示す情報である。ポートレットコンテナ32は、ポータル画面生成手段31からの実行要求に応じて対象ポートレットを実行し、その実行結果のhtml情報をポータル画面生成手段31へ返す。その後、ポータル画面生成手段31は、取得した各ポートレットのhtml情報と、レイアウト情報とを参照して、どのポートレットをポータル画面のどこに配置するかを決定し、当該決定したポータル画面をユーザ端末11に送信する。ユーザ端末11はウェブブラウザ11aを使用してポータル画面生成手段31から送信されたポータル画面を表示する。このようにして、ユーザは、所望のポータル画面を表示できるようにポータルシステム100は構成されている。また、ポータルシステム100の管理者がポータル画面にポートレットを追加する場合、管理者端末10のウェブブラウザ10aを介して、ポータルサーバ30のポートレット追加手段33に対して所定のリクエストを送信する。ポートレット追加手段33は、管理者端末10からリクエストを受け取ると、画面レイアウト情報36を更新し、ポータル画面の任意の位置に対象のポートレットを追加する。これと同期して、ポートレット追加手段33は、ポータル画面生成分析手段34に対して、リクエストを送信する。ポータル画面生成分析手段34は、ポートレット追加手段33からリクエストを受け取ると、画面レイアウト情報36から、ポータル画面に配置するポートレットの情報を取得する。そして、ポータル画面生成分析手段34は、ポートレットコンテナ32に対して、配置対象であるポートレットの実行要求を行う。ただし、ここでの実行要求はポートレット23ではなく検出コード24が挿入されたポートレット25に対して行う。ポートレット25は、ポートレットコンテナ32で実行され、その実行結果のhtml情報をポータル画面生成分析手段34のポータル画面生成手段39に返却する。また、ポートレット25の実行中に、他のポートレットとメッセージ通信が行われた場合、検出コード24が動作してメッセージ送信元のポートレットと受信先のポートレットを特定する情報をポータル画面生成分析手段34に通知する。この通知を受けて、ポータル画面生成分析手段34は、ポートレット間の依存関係情報を、依存関係情報37参照:図4に対して記録する。依存関係情報37は、図4に示すように、ポートレット名と依存先ポートレット名との関係を示す情報である。ポータル画面生成分析手段34は、取得した各ポートレットのhtml情報を一つのポータル画面として集約する。次に、ポータル画面生成分析手段34は、内部に含まれるコンテンツ分析手段38にて、ポートレットコンテンツ間で参照関係が存在するかどうかを確認する参照:図5。この確認は、例えば、図5に示すように、ポートレットコンテンツ内のスクリプトプログラムに他ポートレットを参照する命令が含まれるかどうかで判断することにより行われる参照:図6。図5は、ポートレットコンテンツ間で他ポートレットを参照する関係がある場合ポートレットDから勤務地住所取得を示している。また、図6は、コンテンツ分析手段38が他ポーレット参照命令リストから他のポートレットを参照するコードを検出する様子を示している。参照関係が存在する場合、ポータル画面生成分析手段34は、当該ポートレット間では依存関係が存在するものと判断し、その参照関係を依存関係情報として依存関係情報37に対して記録する。これと同期して、ポータル画面生成分析手段34は、依存関係解決手段35に対して、リクエストを送信する。依存関係解決手段35は、ポータル画面生成分析手段34からリクエストを受け取ると、画面レイアウト情報36からポータル画面に配置するポートレットの情報を取得する。また、依存関係解決手段35は、依存関係情報37から、ポートレット間の依存関係情報を取得する。そして、これら2つの情報を照合して、依存関係解決手段35は、各ポートレットが依存しているポートレットが同じポータル画面上に全て配置されているかどうかを確認する。依存先のポートレットが配置されていない場合、ポートレット追加手段33に当該ポートレットの追加要求を行う。次に図7及び図8のフローチャートを参照してポータル画面にポートレットを追加した場合に、追加したポートレットと依存関係のある他のポートレットを全て当該ポータル画面に配置する処理について詳細に説明する。先ず、管理者端末10からウェブブラウザ10aを使用して、ポータルサーバ30のポートレット追加手段33へリクエストを送信するS101。管理者端末10からのリクエストを受け取った場合受信手段、ポートレット追加手段33は、画面レイアウト情報36を更新して、ポータル画面の任意の位置に対象のポートレットを追加するS102。次に、ポータル画面生成分析手段34は、画面レイアウト情報36からポータル画面に配置するポートレットの情報を取得し、ポートレットコンテナ32に対して、対象のポートレットの実行要求を行うS103。このステップS103における要求は通常のポートレットではなく検出コード24が挿入されたポートレット25に対して行う。ポートレット25は、ポートレットコンテナ32上で実行され、その実行結果のhtml情報がポータル画面生成分析手段34に返却されるS105。ポートレット25の実行中に他のポートレットとメッセージ通信が行われた場合S106:YES、検出コード24が動作してメッセージ送信元のポートレットと受信先のポートレットを特定する情報がポータル画面生成分析手段34に通知されるS107。この通知を受けて、ポータル画面生成分析手段34は、ポートレット間の依存関係を、依存関係情報37に対して記録するS108。これにより、管理者端末10指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得することができる依存情報取得手段。依存関係を記録した場合S108、又は、ポートレット25の実行中に他のポートレットとメッセージ通信を行わなかった場合S106:NOは、ポータル画面生成分析手段34は、ステップS104からS108の処理をポートレット数分繰り返したか否かを判定するS109。ポートレット数分繰り返していない場合S109:NO、既述のステップS104からS108の処理が繰り返される。ポートレット数分繰り返していた場合S109:YES、ポータル画面生成分析手段34は、取得した各ポートレットのhtml情報を一つのポータル画面として集約するS110。次に、コンテンツ分析手段38にて、ポートレットコンテンツ間で参照関係があるか否かを確認するS111。参照関係がある場合はS112:YES、コンテンツ分析手段38は、それらポートレット間には依存関係があるものと判断し、その依存関係を依存関係情報37に対して記録するS113。これにより、ポートレットによって生成されるコンテンツが参照する他のコンテンツを有する他のポートレットを示す参照情報を取得することができる参照情報取得手段。この処理と同期して、又は参照関係がない場合S112:NO、ポータル画面生成分析手段34は、依存関係解決手段35に対して、リクエストを送信する。依存関係解決手段35は、ポータル画面生成分析手段34からリクエストを受け取った場合、画面レイアウト情報36からポータル画面に配置するポートレットの一覧を取得するS114。また、依存関係解決手段35は、依存関係情報37からポートレット間の依存関係を取得するS115。次に、依存関係解決手段35は、これら2つの情報を照合して、各ポートレットが依存しているポートレットが全て同じポータル画面上に配置されているかどうかを確認するS116。依存関係のあるポートレットが全て配置されていない場合S117:NO、依存関係解決手段35は、ポートレット追加手段33に不足ポートレットの追加要求を行うS118。そして、処理は、ステップS102へ戻り、依存関係を有するポートレットが全て同じポータル画面に配置されていると判定されるまで、既述のステップS102からS118の処理が繰り返される。すなわち、依存関係情報37に基づいてポートレットと依存関係を有する他のポートレットが同一のポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する依存関係情報37に基づいて、再度、既述の判定を行うことができる判定手段。また、依存関係のあるポートレットが全て同じポータル画面に配置されている場合S117:YES、ポータルサーバ30は、当該ポータル画面を管理者端末10に提供し提供手段、この処理は終了する。次に、ポートレット23及び検出コード24を挿入したポートレット25をポートレットコンテナ32に配備する処理について図9を参照して説明する。検出コード埋め込み手段21は、ポートレット23の実行プログラムを分析してポートレット間通信を検出する検出コード24をポートレット間通信命令のリストの直後に、ソース無修正で検出コードを挿入し、検出コード挿入後のポートレット25を生成するS201。次に、配備手段22は、ポートレット23と、検出コード24を挿入したポートレット25を、ポータルサーバ30上のポートレットコンテナ32へ配備するS202。このようにして、ポートレットコンテナ32にポートレット23及びポートレット25が配備される。次に、管理者がポートレットをポータル画面に配置する際に、ポータルシステム100が実行する具体的な動作を図10乃至図12を参照して説明する。より詳細には、ポートレットAがポートレットBからメッセージを受信し、ポートレットBのコンテンツからポートレットCのコンテンツを参照している、すなわち、ポートレットA→ポートレットB→ポートレットCという依存関係がある状況において、ポートレット追加手段33によりポータル画面AにポートレットAを追加した場合について説明する。この時、ポータル画面生成分析手段34は、画面レイアウト情報36からポータル画面に配置するポートレットとしてポートレットAに関する情報を取得する。続いて、ポータル画面生成分析手段34は、ポートレットAに検出コード24が挿入されたポートレットA ́の実行要求をポートレットコンテナ32に対して行う。ポートレットA ́は、ポートレットコンテナ32上で実行され、その実行結果のhtml情報がポータル画面生成分析手段34に返却される。ポートレットA ́の実行中、ポートレットB ́との間でメッセージ通信が行われた時に図10:S11、検出コード24が動作し、ポートレットAはポートレットBに依存しているという情報がポータル画面生成分析手段34に通知される図10:S12。この通知を受けて、ポータル画面生成分析手段34は、ポートレットA-ポートレットB間の依存関係を依存関係情報37に対して記録する図10:S13。続いて、依存関係解決手段35は、画面レイアウト情報36と依存関係情報37とからそれぞれポータル画面に配置するポートレットの情報とポートレット間の依存関係を取得する。この時点での各々の情報は図10に示すようになる。ポータル画面AにはポートレットAの依存先であるポートレットBがまだ配置されていないため、依存関係解決手段35は、ポートレット追加手段33にポートレットBを追加する要求を行う図10:S14。図11に示すように、ポートレット追加手段33によりポータル画面AにポートレットBが追加され、画面レイアウト情報36にポートレットBの情報が記録される。そして、ポータル画面生成分析手段34は、画面レイアウト情報36からポータル画面に配置するポートレットとしてポートレットAとポートレットBの情報を取得する。続いて、ポータル画面生成分析手段34は、ポートレットコンテナ32に対してポートレットA ́とポートレットB ́の実行要求を行う。ポートレットA ́の実行は、既述の場合と同様に行われる。ポートレットB ́は、ポートレットコンテナ32上で実行され、その実行結果のhtml情報がポータル画面生成分析手段34に返却される図11:S21。コンテンツ分析手段38は、ポートレットB ́のコンテンツからポートレットCのコンテンツを参照していることを検出し、ポートレットBはポートレットCに依存しているという情報をポータル画面生成分析手段34に通知する図11:S22。この通知を受けて、ポータル画面生成分析手段34は、ポートレットB-ポートレットC間の依存関係を依存関係情報37に対して記録する図11:S23。続いて、依存関係解決手段35は、画面レイアウト情報36と依存関係情報37とからそれぞれポータル画面に配置するポートレットの情報とポートレット間の依存関係情報を取得する。この時点での各々の情報は図11に示すようになる。ポータル画面AにはポートレットBの依存先であるポートレットCがまだ配置されていないため、ポートレット追加手段33にポートレットCを追加する要求を行う図11:S24。図12に示すように、ポートレット追加手段33によりポータル画面AにポートレットCが追加され、画面レイアウト情報36にポートレットCの情報が記録される。そして、ポータル画面生成分析手段34は、画面レイアウト情報36からポータル画面に配置するポートレットとしてポートレットA、ポートレットB及びポートレットCの情報を取得する。続いて、ポータル画面生成分析手段34は、ポートレットコンテナ32に対してポートレットA ́、ポートレットB ́及びポートレットC ́の実行要求を行う。ポートレットA ́及びB ́の実行は既述の場合と同様に行われる。ポートレットC ́は、ポートレットコンテナ32上で実行され、その実行結果のhtml情報がポータル画面生成分析手段34に返却される。続いて、依存関係解決手段35は、画面レイアウト情報36と依存関係情報37とからそれぞれポータル画面に配置するポートレットの情報とポートレット間の依存関係を取得する。この時点での各々の情報は図12に示すようになる。ポータル画面Aには各ポートレットA,Bがそれぞれ依存しているポートレットB,Cを含めて、ポートレットA,B及びCが全て配置されているため、処理が終了になる。以上のように構成されたポータルシステム100によると、あるポートレットをポータル画面に配置するだけで、そのポートレットと依存関係を有するポートレットが全て自動的に当該ポータル画面に配置される。従って、ポータルシステム100の管理者は、事前にポートレット間の依存関係を把握していなくても、配置したポートレットと依存関係を有する他のポートレットの登録漏れや登録誤りを防止できる。また、依存関係を有するポートレットが同じポータル画面上に存在しないケースを想定しておく必要がなくなり、ポートレット開発者の負担が軽減される。また、上記実施の形態では、運用端末20とポータルサーバ30とは別装置の場合で説明したが、これらは1つの装置に含まれるように構成しても良い。なお、本発明は上述の実施の形態に限定されるものではなく、その実施に際して様々な変形が可能である。上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。付記1ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムであって、ポートレットの実行プログラム内に、他のポートレットと通信を行うプログラムを検出する検出コードを埋め込む検出コード埋込手段と、前記管理者端末からポータル画面にポートレットを配置する指示を受信する受信手段と、当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得する依存情報取得手段と、前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前判定を再度行う判定手段と、前記判定手段で全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供する提供手段と、を備えることを特徴とするポータルシステム。付記2前記ポータル画面を生成する場合、ポートレットによって生成されるコンテンツが参照する他のコンテンツを有する他のポートレットを示す参照情報を取得する参照情報取得手段を備え、前記依存情報は、前記参照情報取得手段により取得する参照情報を含む、ことを特徴とする付記1記載のポータルシステム。付記3前記検出コード埋込手段は、前記他のポートレットと通信を行うプログラムの直後に前記検出コードを埋め込む、ことを特徴とする付記1又は2記載のポータルシステム。付記4ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムの依存関係を有するポートレットの配置方法であって、前記管理者端末からポータル画面にポートレットを配置する指示を受信するステップと、当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた他のポートレットと通信を行うプログラムを検出する検出コードに基づいて、他のポートレットとの依存情報を取得するステップと、前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前記判定を行うステップと、前記ステップにおいて全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供するステップと、を有することを特徴とする依存関係を有するポートレットの配置方法。"