プロファイラの概要

Jetspeed のプロファイラは、ポータルのリソースの場所に関するルールベースのエンジンです。Jetspeed のバージョン 2.0 では、プロファイラは以下のような種類のポータルリソースの場所を決定します。

  • PSML ページ
  • フォルダ
  • メニュー
リクエストがポータルで受信されたとき、プロファイラは、実行時パラメータや状態 (リクエストパラメータ、HTTP ヘッダ、セッションの属性など) の正規化された値に基づき、リクエストをリソースと結びつけます。プロファイラはプロファイラバルブ内の Jetspeed のリクエスト処理パイプラインの中で呼び出されます。このバルブは、リクエストコンテキストが、既にポータルのリクエストやレスポンス、機能、言語、ユーザ情報と関連づけられている必要があります。実行時のパラメータは、プロファイラがポータルのリソースを位置を決定するのに使われる判断規準を作ります。

プロファイラはサイトマネージャとページマネージャコンポーネントと協調して動作します。プロファイラは実行時情報を入力として受け取り、その情報を一般化・・・(原文が文の途中で終わっています。原文作者によると、ここで力尽きた、とのことです)。

プロファイリングルール

プロファイリングルールは、特定のリソースの場所を解決するリクエストを評価するときに使われる判断規準のリストを定義します。プロファイリングルールはプロファイラが使用します。これは、既知のポートレットリクエストデータ用の、細分化した判断規準によるポータルリソースの位置を決定するためです。ルールは与えられた順序に適用される判断規準の順序つきのリストから構成されます。このルールの順序に従って、プロファイリングエンジンは、最少のリソースの判断規準とみなせるまで、少ない記述の設定によるアルゴリズムで、それぞれのルールの判断規準を適用します。全ての条件が適用されつくした場合、ルールは失敗となりフォールバックリソースが要求されます。

ルール規準

ルール規準はプロファイルのプロパティの場所を示すためのテンプレートです。デフォルトの実装では、リソースを特定する URL、Mimeタイプ、言語の設定に基づく案で定義されたプロファイリングポリシを持っています。もっと複雑な実装を行うには、Cookie や IP アドレスの範囲や統計的なリソースの利用解析やサーブレットや EJB 内部のビジネスのルールのような、リソースとマッピングされる他の入力が必要となるでしょう。

ルール規準のリゾルバ

リゾルバ説明
requestリクエストパラメータ名とのマッチングによる解決
sessionセッションの属性名とのマッチングによる解決
request.session最初にリクエストの属性名とのマッチングを行ってから、セッションの属性名とのマッチングを行って解決する
hard.codedハードコードされた値による解決
group.role.userフォールバックコントローラ: 現在のユーザグループ、次にロール、次にユーザの所有するフォルダ以下のリソースを探す
user現在のユーザのディレクトリ内のリソースとマッチさせる
group
role
mediatypeリクエストコンテキスト内のメディアタイプとマッチさせる
country
user.agent
language
rolesロールのフォールバック
path
page
path.session
user.attribute
navigation現在のナビゲーションパスを変える

プリンシパルルール

プロファイルロケータ

プロファイルロケータはポータルリソースの位置を決めるのに使われます。ポータルリソースとはページやドキュメントやフラグメントのようなもののことです。ロケータには位置が決められた実際のリソースについて記述されたプロパティが含まれます。ロケータは普通はユーザや他の対象のプロファイルに関係するプロパティに基づいているので、プロファイルロケータとして参照されます。

プロファイルロケータパス

コンポーネントの設定