(57)【特許請求の範囲】
【請求項１】
ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムであって、
ポートレットの実行プログラム内に、他のポートレットと通信を行うプログラムを検出する検出コードを埋め込む検出コード埋込手段と、
前記管理者端末からポータル画面にポートレットを配置する指示を受信する受信手段と、
当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得する依存情報取得手段と、
前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前記判定を行う判定手段と、
前記判定手段で全て配置されていると判定した場合、当該ポータル画面を前記管理者端末に提供する提供手段と、
を備えることを特徴とするポータルシステム。
【請求項２】
前記ポータル画面を生成する場合、ポートレットによって生成されるコンテンツが参照する他のコンテンツを有する他のポートレットを示す参照情報を取得する参照情報取得手段を備え、
前記依存情報は、前記参照情報取得手段により取得する参照情報を含む、ことを特徴とする請求項１記載のポータルシステム。
【請求項３】
前記検出コード埋込手段は、前記他のポートレットと通信を行うプログラムの直後に前記検出コードを埋め込む、ことを特徴とする請求項１又は２記載のポータルシステム。
【請求項４】
ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムの依存関係を有するポートレットの配置方法であって、
前記管理者端末からポータル画面にポートレットを配置する指示を受信するステップと、
当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた他のポートレットと通信を行うプログラムを検出する検出コードに基づいて、他のポートレットとの依存情報を取得するステップと、
前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前記判定を行うステップと、
前記ステップにおいて全て配置されていると判定した場合、当該ポータル画面を前記管理者端末に提供するステップと、
を有することを特徴とする依存関係を有するポートレットの配置方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ポータルシステム及び依存関係を有するポートレットの配置方法に関する。
【背景技術】
【０００２】
ポータルシステムの中には、ポータル管理者又はポートレット開発者が設定したポートレット間の依存関係を管理することにより、ポートレットの配置を変更した場合に、ポートレットの配置漏れ又は配置ミスを防止するシステムが知られている。
【０００３】
例えば、当該システムは、他ポートレットに依存しているポートレットをポータル画面に配置する際に依存先のポートレットも同時に配置するようにユーザに警告を出力することにより、或いは、依存関係にある複数のポートレットのうちの一部だけをポータル画面から外せなくなるように設定しておくことにより、ポートレットの配置漏れ又は配置ミスを防止している。
【０００４】
また、２つのポートレット間、２つのポータル画面間、又はポートレットとポータル画面間の関連性に関する関連性情報を用いて、ポートレットとポータル画面との間の関連性に対応した適切な情報を容易に表示するものが知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２６４９２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、既述のポータルシステムでは、手作業でポートレットの依存関係をシステムに登録する必要があるため、登録漏れや登録誤りを起こす可能性がある。
【０００７】
また、ポータル管理者がポートレット開発者及びポートレット設計書から得た情報に基づいて、ポートレット間の依存関係を逐一把握しなければならないため、ポータル管理者の負担も大きい。
【０００８】
さらに、ポートレット開発者は依存関係を有するポートレットが同じポータル画面上に存在しないケースを想定して開発する必要があったため、ポートレット開発者にとっても負担が大きかった。
【０００９】
一方、特許文献１記載の技術は、関連性を有するポートレットを全て適切に表示するものではない。
【００１０】
本発明は、上記事情に鑑みてなされたものであり、その目的は、ポートレットをポータル画面に配置する場合、当該ポートレットと依存関係を有する全てのポートレットを自動的に当該ポータル画面に配置することができるポータルシステム及び依存関係を有するポートレットの配置方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムであって、ポートレットの実行プログラム内に、他のポートレットと通信を行うプログラムを検出する検出コードを埋め込む検出コード埋込手段と、管理者端末からポータル画面にポートレットを配置する指示を受信する受信手段と、当該ポータル画面を生成する場合、指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得する依存情報取得手段と、依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットがポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する依存情報に基づいて、再度、前記判定を判定手段と、判定手段で全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供する提供手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によると、ポートレットをポータル画面に配置する場合、当該ポートレットと依存関係を有する全てのポートレットを自動的に当該ポータル画面に配置することができるポータルシステム及び依存関係を有するポートレットの配置方法を提供できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係るポータルシステムの構成を示す図である。
【図２】同実施の形態に係る検出コードを埋め込む位置を説明するための図である。
【図３】同実施の形態に係る画面レイアウト情報の一例を示す図である。
【図４】同実施の形態に係る依存関係情報の一例を示す図である。
【図５】同実施の形態に係る参照関係情報の一例を示す図である。
【図６】同実施の形態に係る他ポートレット参照検出を説明するための図である。
【図７】同実施の形態に係る依存関係解決処理の一部を示すフローチャートである。
【図８】同実施の形態に係る依存関係解決処理の他の部分を示すフローチャートである。
【図９】同実施の形態に係る配備処理を示すフローチャートである。
【図１０】同実施の形態に係る依存関係を解決する動作を示す図である。
【図１１】同実施の形態に係る依存関係を解決する動作を示す図である。
【図１２】同実施の形態に係る依存関係を解決する動作を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について図面を参照して説明する。
【００１５】
図１は、ポータルシステムの構成を示す図である。同図に示すように、ポータルシステム１００は、ポートレットの配備を行う運用端末２０と、プログラム制御により動作するポータルサーバ３０と有している。また、ポータルサーバ３０は、ウェブブラウザ１０ａを装備した管理者端末１０と、ウェブブラウザ１１ａを装備したユーザ端末１１と、それぞれ通信可能に接続されている。
【００１６】
運用端末２０は、プログラム制御により動作するポートレット間通信の検出コード埋め込み手段２１と、プログラム制御により動作する配備手段２２と、後述するポートレットコンテナ３２上でプログラム制御により動作するポートレット２３と、検出コード埋め込み手段２１によってポートレット２３の実行プログラムに埋め込まれる検出コード２４と、検出コード２４を挿入した後のポートレット２５と、を有している。
【００１７】
ポータルサーバ３０は、プログラム制御により動作する、ポータル画面生成手段３１、ポートレットコンテナ３２、ポートレット追加手段３３、ポータル画面生成・分析手段３４及び依存関係解決手段３５、並びに、補助記憶装置又は記憶媒体に格納された画面レイアウト情報３６及び依存関係情報３７を有している。更に、ポータル画面生成・分析手段３４は、コンテンツ分析手段３８及びポータル画面生成手段３９を有しており、ポートレットコンテナ３２は、運用端末２０の配備手段２２によって配備されるポートレット及び検出コード２４が挿入されたポートレットを有している。
【００１８】
なお、図１に示すポートレットコンテナ３２には、ポートレットＡ、検出コード２４を含むポートレットＡ（以下、ポートレットＡ´）、ポートレットＢ及び検出コード２４を含むポートレットＢ（以下、ポートレットＢ´）を有している。
【００１９】
検出コード埋め込み手段２１は、図２に示すように、ポートレット２３の実行プログラムを分析し、ポートレット間通信命令のリストの直後に検出コード２４を機械的に埋め込み、検出コード２４が挿入されたポートレット２５を生成する。この検出コード２４は、ポートレット間でのメッセージ通信時に動作し、メッセージ送信元のポートレットと受信先のポートレットを特定する情報をポータルサーバ３０に通知するプログラムコードである。なお、既述のコード埋め込みに関する技術は、従来よりあるものと同様であるため詳細な説明は省略する。
【００２０】
配備手段２２は、ポートレット２３と、検出コード２４を挿入したポートレット２５を、ポータルサーバ３０のポートレットコンテナ３２へ配備する。
【００２１】
ユーザ端末１１のウェブブラウザ１１ａにポータル画面を表示する場合、ユーザは、ユーザ端末１１のウェブブラウザ１１ａを介して、ポータルサーバ３０のポータル画面生成手段３１に対して所定のリクエストを送信する。
【００２２】
ポータル画面生成手段３１は、ユーザ端末１１からリクエストを受け取ると、画面レイアウト情報３６（参照：図３）から、ポータル画面に配置するポートレットの情報と、そのレイアウト情報を取得する。そして、ポータル画面生成手段３１は、ポートレットコンテナ３２に対して、配置対象であるポートレットの実行要求を行う。画面レイアウト情報３６は、図３に示すように、ポータル画面に表示するポートレット名とポートレット配置位置との関係を示す情報である。
【００２３】
ポートレットコンテナ３２は、ポータル画面生成手段３１からの実行要求に応じて対象ポートレットを実行し、その実行結果のhtml情報をポータル画面生成手段３１へ返す。
【００２４】
その後、ポータル画面生成手段３１は、取得した各ポートレットのhtml情報と、レイアウト情報とを参照して、どのポートレットをポータル画面のどこに配置するかを決定し、当該決定したポータル画面をユーザ端末１１に送信する。
【００２５】
ユーザ端末１１はウェブブラウザ１１ａを使用してポータル画面生成手段３１から送信されたポータル画面を表示する。このようにして、ユーザは、所望のポータル画面を表示できるようにポータルシステム１００は構成されている。
【００２６】
また、ポータルシステム１００の管理者がポータル画面にポートレットを追加する場合、管理者端末１０のウェブブラウザ１０ａを介して、ポータルサーバ３０のポートレット追加手段３３に対して所定のリクエストを送信する。
【００２７】
ポートレット追加手段３３は、管理者端末１０からリクエストを受け取ると、画面レイアウト情報３６を更新し、ポータル画面の任意の位置に対象のポートレットを追加する。これと同期して、ポートレット追加手段３３は、ポータル画面生成・分析手段３４に対して、リクエストを送信する。
【００２８】
ポータル画面生成・分析手段３４は、ポートレット追加手段３３からリクエストを受け取ると、画面レイアウト情報３６から、ポータル画面に配置するポートレットの情報を取得する。そして、ポータル画面生成・分析手段３４は、ポートレットコンテナ３２に対して、配置対象であるポートレットの実行要求を行う。ただし、ここでの実行要求はポートレット２３ではなく検出コード２４が挿入されたポートレット２５に対して行う。
【００２９】
ポートレット２５は、ポートレットコンテナ３２で実行され、その実行結果のhtml情報をポータル画面生成・分析手段３４のポータル画面生成手段３９に返却する。また、ポートレット２５の実行中に、他のポートレットとメッセージ通信が行われた場合、検出コード２４が動作してメッセージ送信元のポートレットと受信先のポートレットを特定する情報をポータル画面生成・分析手段３４に通知する。この通知を受けて、ポータル画面生成・分析手段３４は、ポートレット間の依存関係情報を、依存関係情報３７（参照：図４）に対して記録する。依存関係情報３７は、図４に示すように、ポートレット名と依存先ポートレット名との関係を示す情報である。
【００３０】
ポータル画面生成・分析手段３４は、取得した各ポートレットのhtml情報を一つのポータル画面として集約する。
【００３１】
次に、ポータル画面生成・分析手段３４は、内部に含まれるコンテンツ分析手段３８にて、ポートレットコンテンツ間で参照関係が存在するかどうかを確認する（参照：図５）。この確認は、例えば、図５に示すように、ポートレットコンテンツ内のスクリプトプログラムに他ポートレットを参照する命令が含まれるかどうかで判断することにより行われる（参照：図６）。図５は、ポートレットコンテンツ間で他ポートレットを参照する関係がある場合（ポートレットＤから勤務地住所取得）を示している。また、図６は、コンテンツ分析手段３８が他ポーレット参照命令リストから他のポートレットを参照するコードを検出する様子を示している。
【００３２】
参照関係が存在する場合、ポータル画面生成・分析手段３４は、当該ポートレット間では依存関係が存在するものと判断し、その参照関係を依存関係情報として依存関係情報３７に対して記録する。これと同期して、ポータル画面生成・分析手段３４は、依存関係解決手段３５に対して、リクエストを送信する。
【００３３】
依存関係解決手段３５は、ポータル画面生成・分析手段３４からリクエストを受け取ると、画面レイアウト情報３６からポータル画面に配置するポートレットの情報を取得する。また、依存関係解決手段３５は、依存関係情報３７から、ポートレット間の依存関係情報を取得する。そして、これら２つの情報を照合して、依存関係解決手段３５は、各ポートレットが依存しているポートレットが同じポータル画面上に全て配置されているかどうかを確認する。依存先のポートレットが配置されていない場合、ポートレット追加手段３３に当該ポートレットの追加要求を行う。
【００３４】
次に図７及び図８のフローチャートを参照してポータル画面にポートレットを追加した場合に、追加したポートレットと依存関係のある他のポートレットを全て当該ポータル画面に配置する処理について詳細に説明する。
【００３５】
先ず、管理者端末１０からウェブブラウザ１０ａを使用して、ポータルサーバ３０のポートレット追加手段３３へリクエストを送信する（Ｓ１０１）。
【００３６】
管理者端末１０からのリクエストを受け取った場合（受信手段）、ポートレット追加手段３３は、画面レイアウト情報３６を更新して、ポータル画面の任意の位置に対象のポートレットを追加する（Ｓ１０２）。
【００３７】
次に、ポータル画面生成・分析手段３４は、画面レイアウト情報３６からポータル画面に配置するポートレットの情報を取得し、ポートレットコンテナ３２に対して、対象のポートレットの実行要求を行う（Ｓ１０３）。このステップＳ１０３における要求は通常のポートレットではなく検出コード２４が挿入されたポートレット２５に対して行う。
【００３８】
ポートレット２５は、ポートレットコンテナ３２上で実行され、その実行結果のhtml情報がポータル画面生成・分析手段３４に返却される（Ｓ１０５）。
【００３９】
ポートレット２５の実行中に他のポートレットとメッセージ通信が行われた場合（Ｓ１０６：ＹＥＳ）、検出コード２４が動作してメッセージ送信元のポートレットと受信先のポートレットを特定する情報がポータル画面生成・分析手段３４に通知される（Ｓ１０７）。
【００４０】
この通知を受けて、ポータル画面生成・分析手段３４は、ポートレット間の依存関係を、依存関係情報３７に対して記録する（Ｓ１０８）。これにより、管理者端末１０指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得することができる（依存情報取得手段）。
【００４１】
依存関係を記録した場合（Ｓ１０８）、又は、ポートレット２５の実行中に他のポートレットとメッセージ通信を行わなかった場合（Ｓ１０６：ＮＯ）は、ポータル画面生成・分析手段３４は、ステップＳ１０４からＳ１０８の処理をポートレット数分繰り返したか否かを判定する（Ｓ１０９）。
【００４２】
ポートレット数分繰り返していない場合（Ｓ１０９：ＮＯ）、既述のステップＳ１０４からＳ１０８の処理が繰り返される。
【００４３】
ポートレット数分繰り返していた場合（Ｓ１０９：ＹＥＳ）、ポータル画面生成・分析手段３４は、取得した各ポートレットのhtml情報を一つのポータル画面として集約する（Ｓ１１０）。
【００４４】
次に、コンテンツ分析手段３８にて、ポートレットコンテンツ間で参照関係があるか否かを確認する（Ｓ１１１）。
【００４５】
参照関係がある場合は（Ｓ１１２：ＹＥＳ）、コンテンツ分析手段３８は、それらポートレット間には依存関係があるものと判断し、その依存関係を依存関係情報３７に対して記録する（Ｓ１１３）。これにより、ポートレットによって生成されるコンテンツが参照する他のコンテンツを有する他のポートレットを示す参照情報を取得することができる（参照情報取得手段）。この処理と同期して、又は参照関係がない場合（Ｓ１１２：ＮＯ）、ポータル画面生成・分析手段３４は、依存関係解決手段３５に対して、リクエストを送信する。
【００４６】
依存関係解決手段３５は、ポータル画面生成・分析手段３４からリクエストを受け取った場合、画面レイアウト情報３６からポータル画面に配置するポートレットの一覧を取得する（Ｓ１１４）。
【００４７】
また、依存関係解決手段３５は、依存関係情報３７からポートレット間の依存関係を取得する（Ｓ１１５）。
【００４８】
次に、依存関係解決手段３５は、これら２つの情報を照合して、各ポートレットが依存しているポートレットが全て同じポータル画面上に配置されているかどうかを確認する（Ｓ１１６）。
【００４９】
依存関係のあるポートレットが全て配置されていない場合（Ｓ１１７：ＮＯ）、依存関係解決手段３５は、ポートレット追加手段３３に不足ポートレットの追加要求を行う（Ｓ１１８）。そして、処理は、ステップＳ１０２へ戻り、依存関係を有するポートレットが全て同じポータル画面に配置されていると判定されるまで、既述のステップＳ１０２からＳ１１８の処理が繰り返される。すなわち、依存関係情報３７に基づいてポートレットと依存関係を有する他のポートレットが同一のポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する依存関係情報３７に基づいて、再度、既述の判定を行うことができる（判定手段）。
【００５０】
また、依存関係のあるポートレットが全て同じポータル画面に配置されている場合（Ｓ１１７：ＹＥＳ）、ポータルサーバ３０は、当該ポータル画面を管理者端末１０に提供し（提供手段）、この処理は終了する。
【００５１】
次に、ポートレット２３及び検出コード２４を挿入したポートレット２５をポートレットコンテナ３２に配備する処理について図９を参照して説明する。
【００５２】
検出コード埋め込み手段２１は、ポートレット２３の実行プログラムを分析してポートレット間通信を検出する検出コード２４をポートレット間通信命令のリストの直後に、ソース無修正で検出コードを挿入し、検出コード挿入後のポートレット２５を生成する（Ｓ２０１）。
【００５３】
次に、配備手段２２は、ポートレット２３と、検出コード２４を挿入したポートレット２５を、ポータルサーバ３０上のポートレットコンテナ３２へ配備する（Ｓ２０２）。
【００５４】
このようにして、ポートレットコンテナ３２にポートレット２３及びポートレット２５が配備される。
【００５５】
次に、管理者がポートレットをポータル画面に配置する際に、ポータルシステム１００が実行する具体的な動作を図１０乃至図１２を参照して説明する。
【００５６】
より詳細には、ポートレットＡがポートレットＢからメッセージを受信し、ポートレットＢのコンテンツからポートレットＣのコンテンツを参照している、すなわち、ポートレットＡ→ポートレットＢ→ポートレットＣという依存関係がある状況において、ポートレット追加手段３３によりポータル画面ＡにポートレットＡを追加した場合について説明する。
【００５７】
この時、ポータル画面生成・分析手段３４は、画面レイアウト情報３６からポータル画面に配置するポートレットとしてポートレットＡに関する情報を取得する。続いて、ポータル画面生成・分析手段３４は、ポートレットＡに検出コード２４が挿入されたポートレットＡ´の実行要求をポートレットコンテナ３２に対して行う。
【００５８】
ポートレットＡ´は、ポートレットコンテナ３２上で実行され、その実行結果のhtml情報がポータル画面生成・分析手段３４に返却される。
【００５９】
ポートレットＡ´の実行中、ポートレットＢ´との間でメッセージ通信が行われた時に（図１０：Ｓ１１）、検出コード２４が動作し、「ポートレットＡはポートレットＢに依存している」という情報がポータル画面生成・分析手段３４に通知される（図１０：Ｓ１２）。この通知を受けて、ポータル画面生成・分析手段３４は、ポートレットＡ−ポートレットＢ間の依存関係を依存関係情報３７に対して記録する（図１０：Ｓ１３）。
【００６０】
続いて、依存関係解決手段３５は、画面レイアウト情報３６と依存関係情報３７とからそれぞれポータル画面に配置するポートレットの情報とポートレット間の依存関係を取得する。この時点での各々の情報は図１０に示すようになる。ポータル画面ＡにはポートレットＡの依存先であるポートレットＢがまだ配置されていないため、依存関係解決手段３５は、ポートレット追加手段３３にポートレットＢを追加する要求を行う（図１０：Ｓ１４）。
【００６１】
図１１に示すように、ポートレット追加手段３３によりポータル画面ＡにポートレットＢが追加され、画面レイアウト情報３６にポートレットＢの情報が記録される。
【００６２】
そして、ポータル画面生成・分析手段３４は、画面レイアウト情報３６からポータル画面に配置するポートレットとしてポートレットＡとポートレットＢの情報を取得する。続いて、ポータル画面生成・分析手段３４は、ポートレットコンテナ３２に対してポートレットＡ´とポートレットＢ´の実行要求を行う。ポートレットＡ´の実行は、既述の場合と同様に行われる。ポートレットＢ´は、ポートレットコンテナ３２上で実行され、その実行結果のhtml情報がポータル画面生成・分析手段３４に返却される（図１１：Ｓ２１）。
【００６３】
コンテンツ分析手段３８は、ポートレットＢ´のコンテンツからポートレットＣのコンテンツを参照していることを検出し、「ポートレットＢはポートレットＣに依存している」という情報をポータル画面生成・分析手段３４に通知する（図１１：Ｓ２２）。
【００６４】
この通知を受けて、ポータル画面生成・分析手段３４は、ポートレットＢ−ポートレットＣ間の依存関係を依存関係情報３７に対して記録する（図１１：Ｓ２３）。
【００６５】
続いて、依存関係解決手段３５は、画面レイアウト情報３６と依存関係情報３７とからそれぞれポータル画面に配置するポートレットの情報とポートレット間の依存関係情報を取得する。この時点での各々の情報は図１１に示すようになる。ポータル画面ＡにはポートレットＢの依存先であるポートレットＣがまだ配置されていないため、ポートレット追加手段３３にポートレットＣを追加する要求を行う（図１１：Ｓ２４）。
【００６６】
図１２に示すように、ポートレット追加手段３３によりポータル画面ＡにポートレットＣが追加され、画面レイアウト情報３６にポートレットＣの情報が記録される。
【００６７】
そして、ポータル画面生成・分析手段３４は、画面レイアウト情報３６からポータル画面に配置するポートレットとしてポートレットＡ、ポートレットＢ及びポートレットＣの情報を取得する。続いて、ポータル画面生成・分析手段３４は、ポートレットコンテナ３２に対してポートレットＡ´、ポートレットＢ´及びポートレットＣ´の実行要求を行う。ポートレットＡ´及びＢ´の実行は既述の場合と同様に行われる。ポートレットＣ´は、ポートレットコンテナ３２上で実行され、その実行結果のhtml情報がポータル画面生成・分析手段３４に返却される。
【００６８】
続いて、依存関係解決手段３５は、画面レイアウト情報３６と依存関係情報３７とからそれぞれポータル画面に配置するポートレットの情報とポートレット間の依存関係を取得する。この時点での各々の情報は図１２に示すようになる。ポータル画面Ａには各ポートレットＡ，Ｂがそれぞれ依存しているポートレットＢ，Ｃを含めて、ポートレットＡ，Ｂ及びＣが全て配置されているため、処理が終了になる。
【００６９】
以上のように構成されたポータルシステム１００によると、あるポートレットをポータル画面に配置するだけで、そのポートレットと依存関係を有するポートレットが全て自動的に当該ポータル画面に配置される。
【００７０】
従って、ポータルシステム１００の管理者は、事前にポートレット間の依存関係を把握していなくても、配置したポートレットと依存関係を有する他のポートレットの登録漏れや登録誤りを防止できる。また、依存関係を有するポートレットが同じポータル画面上に存在しないケースを想定しておく必要がなくなり、ポートレット開発者の負担が軽減される。
【００７１】
また、上記実施の形態では、運用端末２０とポータルサーバ３０とは別装置の場合で説明したが、これらは１つの装置に含まれるように構成しても良い。
【００７２】
なお、本発明は上述の実施の形態に限定されるものではなく、その実施に際して様々な変形が可能である。
【００７３】
上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００７４】
（付記１）
ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムであって、
ポートレットの実行プログラム内に、他のポートレットと通信を行うプログラムを検出する検出コードを埋め込む検出コード埋込手段と、
前記管理者端末からポータル画面にポートレットを配置する指示を受信する受信手段と、
当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた検出コードに基づいて、他のポートレットとの依存情報を取得する依存情報取得手段と、
前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前判定を再度行う判定手段と、
前記判定手段で全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供する提供手段と、
を備えることを特徴とするポータルシステム。
【００７５】
（付記２）
前記ポータル画面を生成する場合、ポートレットによって生成されるコンテンツが参照する他のコンテンツを有する他のポートレットを示す参照情報を取得する参照情報取得手段を備え、
前記依存情報は、前記参照情報取得手段により取得する参照情報を含む、ことを特徴とする付記１記載のポータルシステム。
【００７６】
（付記３）
前記検出コード埋込手段は、前記他のポートレットと通信を行うプログラムの直後に前記検出コードを埋め込む、ことを特徴とする付記１又は２記載のポータルシステム。
【００７７】
（付記４）
ポートレットが配置されるポータル画面を管理する管理者端末と通信可能に接続されるポータルシステムの依存関係を有するポートレットの配置方法であって、
前記管理者端末からポータル画面にポートレットを配置する指示を受信するステップと、
当該ポータル画面を生成する場合、前記指示を受けたポートレットの実行プログラムに埋め込まれた他のポートレットと通信を行うプログラムを検出する検出コードに基づいて、他のポートレットとの依存情報を取得するステップと、
前記依存情報に基づいて当該ポートレットと依存関係を有する他のポートレットが前記ポータル画面に全て配置されているか否かを判定し、全て配置されていないと判定した場合、当該他のポートレットを全て表示するようにポータル画面を再生成し、当該再生成したポータル画面に再配置されたポートレットに関する前記依存情報に基づいて、再度、前記判定を行うステップと、
前記ステップにおいて全て配置されていると判定した場合、当該ポータル画面を前記運用端末に提供するステップと、
を有することを特徴とする依存関係を有するポートレットの配置方法。
【産業上の利用可能性】
【００７８】
本発明は、ポートレット間に依存関係があるポータルシステム及びその依存関係を解決する方法に広く適用可能である。
【符号の説明】
【００７９】
１０・・・管理者端末
１０ａ，１１ａ・・・ウェブブラウザ
１１・・・ユーザ端末
２０・・・運用端末
２１・・・検出コード埋め込み手段
２２・・・配備手段
２３・・・ポートレット
２４・・・検出コード
２５・・・検出コードが埋め込まれたポートレット
３０・・・ポータルサーバ
３１・・・ポータル画面生成手段
３２・・・ポートレットコンテナ
３３・・・ポートレット追加手段
３４・・・ポータル画面生成・分析手段
３５・・・依存関係解決手段
３６・・・画面レイアウト情報
３７・・・依存関係情報
１００・・・ポータルシステム
【図１】
0005691683.tif 000002
【図２】
0005691683.tif 000003
【図３】
0005691683.tif 000004
【図４】
0005691683.tif 000005
【図５】
0005691683.tif 000006
【図６】
0005691683.tif 000007
【図７】
0005691683.tif 000008
【図８】
0005691683.tif 000009
【図９】
0005691683.tif 000010
【図１０】
0005691683.tif 000011
【図１１】
0005691683.tif 000012
【図１２】
0005691683.tif 000013