ポータル開発ガイド

     前  次    新しいウィンドウで目次を開く     
ここから内容

Workshop for WebLogic を使用したポータル開発

この章で説明するタスクを実行する前に、必ず「ポータル開発環境の設定」に記載されている設定手順を実行してください。また、ポータルの作成を始める前に、ポータルのインタフェースに使用するフレームワーク (ルック アンド フィールの要素、必要な CSS ファイルなど) を用意しておく必要があります。

この章の内容は以下のとおりです。

 


ポータルの作成

ポータルを作成すると、WebLogic Portal によりポータル ファイルが作成されます。このファイルは、.portal ファイル拡張子を持つ XML ファイルです。.portal ファイルは、ポータルでの中心的なファイルとして定義され、デスクトップ、ブック、ページ、ポートレットなど、ポータルのすべての主要なコンポーネントへの参照が設定されています。

ポータルとそれに付随する .portal ファイルを作成するには、以下の手順を実行します。

  1. ポータル パースペクティブが開かれていない場合は、[ウィンドウ|パースペクティブを開く|ポータル] を選択してこのパースペクティブを選択します。
  2. ポータル Web プロジェクトの Web コンテンツ ディレクトリ (デフォルトでは、WebContent) に移動し、このディレクトリを右クリックして、[新規|ポータル] を選択します。
  3. 図 8-1 に示すように、[新しいポータル] ダイアログが表示されます。

    Web コンテンツ ディレクトリを右クリックしてこのウィザードを起動したため、親フォルダ フィールドにそのディレクトリ名が自動的に表示されます。

    図 8-1 [新しいポータル] ダイアログ


    [新しいポータル] ダイアログ

    Web プロジェクト ディレクトリの下位にある Web コンテンツ ディレクトリで、目的のポータル ファイルを見つけます。デフォルトの Web コンテンツ ディレクトリ名は WebContent で、この名前はポータル Web プロジェクト ウィザードを使用するときに割り当てられます。Web コンテンツのディレクトリの名前は、必要に応じて変更できます。詳細については、「[新しいポータル Web プロジェクト - Web Module] ダイアログ」を参照してください。

  4. [ファイル名] フィールドに、ポータルに割り当てる名前を入力します。
  5. ポータルのファイル タイプは .portal にする必要があります。ポータルの名前に拡張子 .portal を入力することもできますが、入力を省略するとこの拡張子が自動的に追加されます。

  6. [終了] をクリックします。
  7. 図 8-2 に示すように、ポータル Web プロジェクトの指定したフォルダにポータルが追加され、このポータルがエディタに表示されます。

    図 8-2 ワークベンチに表示されるポータル


    ワークベンチに表示されるポータル

作成したポータルには、デスクトップヘッダフッタブック、およびページが含まれます。デスクトップは、ポータル コンテンツのユーザ固有のビューです。ポータルでは多数のデスクトップをサポートできます。1 つのポータルでは、従業員固有のデスクトップや顧客固有のデスクトップなどをサポートできます。各デスクトップでは、さまざまな種類のコンテンツをさまざまなグループのユーザに公開します。ポータルの任意の部分 (ブック、ページ、特定のアプリケーション、個々のリンクなど) をデスクトップに含めたり、デスクトップから除外したりできます。

デスクトップは、ポータルのルック アンド フィール属性を定義することもできます。デスクトップは、使用される色スキーム、フォント、および画像を定義する特定のスキンに関連付けることができます。また、デスクトップには、デスクトップのルック アンド フィールの一貫性を保つために、画像、テキスト、または Web コンテンツを配置できるヘッダとフッタも含まれています。

通常は、Workshop for WebLogic で、ポータルとその主要コンポーネントを開発し、その後 WebLogic Portal Administration Console で、そのポータルをテンプレートとして使用して特定のデスクトップを作成します。開発の次の段階でデスクトップを作成する方法については、「ポータル デスクトップの管理」を参照してください。

階層形式でコンテンツとナビゲーションを整理するには、ブックを使用します。ブックには他のブックまたはページを含めることができます。ブラウザでは、ブックは一連のタブまたはリンクとして表示されます。デフォルトでは、各ポータルには、「メイン ページ ブック」というメイン ブックがあります。ページは、ポータルの実際のコンテンツを整理する一連のカラムまたはウィンドウ (あるいはその両方) で構成されます。ページに移動するには、個々のタブまたはリンクをクリックします。Workshop for WebLogic または WebLogic Portal Administration Console のいずれかを使用して、ブックおよびページを作成できます。

ページまたはブックのポータルへの追加

この節では、ポータルのメイン ブックに次のページを追加する方法について説明します。ブラウザにポータルが表示されると、2 つのページはクリックできる 2 つのタブとして表示されます。新しいページを追加する方法はいくつかあります。この節では、ドラッグ アンド ドロップによる方法について説明します。

注意 : ポータルにブックを追加する手順は、ページを追加する手順とほとんど同じです。ここでは、両方の手順を説明するのではなく、ページを追加する方法について説明し、必要な箇所で両方のタスクの違いについて説明することにします。

ポータルにページを追加するには、以下の手順を実行します。

  1. [パレット] ビューから追加場所に、[ページ] アイコンをドラッグ アンド ドロップします。新しいページをデフォルト ポータル ページの右側に追加すると、図 8-3 のような結果になります。
  2. ヒント : [パレット] ビューが表示されていない場合は、[ウィンドウ|ビューの表示|パレット] を選択します。
    図 8-3 ワークベンチのポータルへのページの追加


    ワークベンチのポータルへのページの追加

スタンドアロン ブックまたはページの作成

スタンドアロン ブックまたはページを作成することができます。作成すると、ブックまたはページの情報は別個の .book または .page ファイルに保存され、.portal ファイルには組み込まれせん。スタンドアロン ブックおよびページは、ポータル開発環境で非常に有用な要素です。たとえば、チーム開発環境では、個別に管理して後でポータルに追加できる個々のブックまたはページを開発者は作成できます。また、リモートのコンシューマ アプリケーションにアクセスできるブックやページを作成する場合は、Workshop for WebLogic を使用して、ブックまたはページをスタンドアロンの .book または .page ファイルとして作成する必要があります。

注意 : スタンドアロン ブックの作成手順は、スタンドアロン ページの作成手順とほとんど同じです。ここでは、両方の手順を説明するのではなく、スタンドアロン ページを作成する方法について説明し、必要な箇所で両方の手順の違いを説明することにします。

ポータルにスタンドアロン ページを作成するには、以下の手順を実行します。

  1. ポータル Web プロジェクトで、Web コンテンツ フォルダ (通常、名前は WebContent) または Web コンテンツ フォルダ内のフォルダに移動します。
  2. Web プロジェクト ディレクトリの下位にある Web コンテンツ ディレクトリまたはサブディレクトリで、ブックとページを見つけます。デフォルトの Web コンテンツ ディレクトリ名は WebContent で、この名前はポータル Web プロジェクト ウィザードを使用するときに割り当てられます。Web コンテンツのディレクトリの名前は、必要に応じて変更できます。詳細については、「[新しいポータル Web プロジェクト - Web Module] ダイアログ」を参照してください。

  3. [ファイル|新規|その他] を選択します。
  4. [新規 - ウィザードを選択] ダイアログで、WebLogic Portal フォルダを開き、[ページ] を選択し、[次へ] をクリックします。
  5. [新しいページ] ダイアログで、ウィザードを開始する前に移動した親フォルダのパスが自動入力されていることを確認します。

  6. 新しいページの名前を入力します。図 8-4 に例を示します。
  7. スタンドアロン ページの場合、ファイル タイプは .page にする必要があります (スタンドアロン ブックの場合は .book)。必要な場合は .page 拡張子を入力できますが、入力しないと、WebLogic Portal により自動的に拡張子が追加されます。

    図 8-4 [新しいページ] ダイアログ


    [新しいページ] ダイアログ

  8. [終了] をクリックします。
  9. 図 8-5 に示すように、指定したフォルダのポータル Web プロジェクトに新しいページが追加されます。

    図 8-5 新しいページ ファイル


    新しいページ ファイル

    また、エディタでページを開くと、図 8-6 のようになります。

    図 8-6 エディタに表示されたページ ファイル


    エディタに表示されたページ ファイル

ブックまたはページの参照 (コンテンツ) の追加

次の選択手順に従って、既存のブックまたはページへの参照をポータルのブックまたはページに追加します。

ポータル エディタからのブックまたはページの参照の追加

以下の手順を実行します。

  1. ブックまたはページの参照を追加するポータル要素を強調表示します。
  2. 選択した要素の周囲にオレンジ色の境界線が表示されます。

  3. 要素を右クリックし、[挿入|新しいブック コンテンツ] または [挿入|新しいページ コンテンツ] を選択します。
  4. [ブックの選択] ダイアログまたは [ページの選択] ダイアログが表示されます。Web プロジェクト用のすべての .book ファイルまたは .page ファイルが一覧表示されます。

    注意 : [挿入] メニュー オプションは、選択したポータル要素に応じて、この選択が有効な場合にのみ表示されます。
  5. 目的の .book ファイルまたは .page ファイルを選択し、[OK] をクリックします。
  6. Workshop for WebLogic ウィンドウが更新されて、アウトライン ビューに Book (または Page) Content ノードが追加され、プロパティ ビューにコンテンツ プロパティが表示されます。

アウトライン ビューを使用したブックまたはページの参照の追加

以下の手順を実行します。

  1. ブック コンテンツまたはページ コンテンツを追加する要素を右クリックし、[挿入|新しいブック コンテンツ] または [挿入|新しいページ コンテンツ を選択します。
  2. [ブックの選択] ダイアログまたは [ページの選択] ダイアログが表示されます。Web プロジェクト用のすべての .book ファイルまたは .page ファイルが一覧表示されます。

    注意 : [挿入] メニュー オプションは、選択したポータル要素に応じて、この選択が有効な場合にのみ表示されます。
  3. 目的の .book ファイルまたは .page ファイルを選択し、[OK] をクリックします。
  4. Workshop for WebLogic ウィンドウが更新されて、アウトライン ビューに Book (または Page) Content ノードが追加され、プロパティ ビューにコンテンツ プロパティが表示されます。

ブックおよびページの再配置

ブックおよびページの順序を変更できます。たとえば、メイン ページ ブックに 1 つのページと 1 つのブックが次の順序で配置されているとします。

ホーム ページ|マイ ブック

この順序を次のように変更できます。

マイ ブック|ホーム ページ

ブックおよびページの順序を変更するには、アウトライン ビューで、移動するブックまたはページを右クリックし、[上へ移動] または [下へ移動] を選択します。アウトライン ビュー内でブックまたはページが上または下に移動し、ポータル エディタ内では水平方向の順序が変更されます。

ブックおよびページの配置を変更しても、WebLogic Portal Administration Console を使用して作成済みのブックおよびページの配置は、ポータル デスクトップでは変更されません。これらのブックおよびページの再配置の手順については、「ポータル デスクトップの管理」を参照してください。

 


ポータル コンポーネントのプロパティ

ポータルのプロパティは、ポータルをユニークに識別し、ポータルの特性を定義する名前付きのポータルの属性です。一部のプロパティ (タイトル、定義ラベルなど) は必須です。多くのオプションのプロパティを使用すると、プレゼンテーション プロパティ、ロールオーバ画像、コントロール ツリーの最適化など、ポータルの特定の機能を有効にできます。ポータルに使用する特定のプロパティは、そのポータルの使い方に応じて異なります。

ポータル ライフサイクルの開発段階では、通常 Workshop for WebLogic を使用してポータルのプロパティを編集します。この節では、Workshop for WebLogic を使用して編集できるプロパティについて説明します。

ステージング段階およびプロダクション段階では、通常 WebLogic Portal Administration Console を使用してポータルのプロパティを編集します。この時点では、プロパティのサブセットのみ編集可能です。WebLogic Portal Administration Console でポータル プロパティを編集する手順については、「ポータル デスクトップの管理」を参照してください。

この節では、次のトピックについて説明します。

ポータル プロパティの編集

ポータル プロパティを編集するには、以下の手順を実行します。

  1. プロパティを編集するポータルがある場所に移動し、.portal ファイルをダブルクリックしてエディタで開きます。
  2. 目的のコンポーネントの境界線をクリックし、プロパティ ビューにそのプロパティを表示します。
  3. 表示されるプロパティは、選択したアクティブ領域に応じて異なります。たとえば、境界線の外側 (デスクトップ) をクリックするとデスクトップ全体が表示され、プレースホルダの内側をクリックするとそのプレースホルダのプロパティが表示されます。

  4. プロパティ ビューに移動し、そのコンポーネントのプロパティに設定されている現在の値を表示します。図 8-7 は、ポータル ヘッダのプロパティ ビューの一部です。
  5. 図 8-7 ポータル プロパティの例 - ヘッダ プロパティ


    ポータル プロパティの例 - ヘッダ プロパティ

  6. 変更するフィールドをダブルクリックします。
  7. マウスをプロパティ フィールドの上に移動すると、そのフィールドの説明がポップアップ ウィンドウに表示されます。

    一部のプロパティは、ポータルを作成した後は値を編集できなくなります。

    プロパティ フィールドによっては、そのプロパティに関連する情報を表示できる場合があります。たとえば、スケルトン URI プロパティには、関連付けられているファイルを表示する [開く] ポータル プロパティの例 - ヘッダ プロパティ ボタンが用意されています。プロパティ ビューで利用できるオプションの詳細については、「プロパティ ビューを使用する場合のヒント」を参照してください。

プロパティ ビューを使用する場合のヒント

プロパティ ビューの動作は、編集するフィールドの種類に応じて異なります。次に説明するヒントは、プロパティ ビューのデータ フィールドの内容を操作するときに役立つ場合があります。

すべてのポータル コンポーネントのプロパティ

この節で説明するプロパティは .portal ファイルに含まれ、プロパティ ビューで編集することができます。ここに入力する値は、.portal ファイルの対応する値をオーバーライドします (値が存在する場合)。

ポータル エディタ ビューで境界線をクリックすると、ポータルのそのセクションの周囲にオレンジ色の輪郭が表示され、関連するプロパティのセットがプロパティ ビューに表示されます。表示されるプロパティは、ビューで選択した境界線に応じて異なります。図 8-8 は、強調表示されたヘッダ領域と関連するプロパティです。

図 8-8 プロパティ ビューの強調表示されたポータル ヘッダと関連プロパティ

プロパティ ビューの強調表示されたポータル ヘッダと関連プロパティ

表 8-1 は、ポータル プロパティとその値の説明です。この表では、プロパティがアルファベット順にリストされています。

表 8-1 ポータルのプロパティ ビューに表示されるプロパティ
プロパティ
タイプ
説明
バッキング ファイル (バックアップ可能プロパティのセクション、ブックとページのセクション)
省略可能
ポートレット表示の前にクラスを使用して事前処理 (認証など) を行う場合は、そのクラスの完全修飾名を入力する。このクラスはインタフェース com.bea.netuix.servlets.controls.content.backing.JspBacking を実装するか、com.bea.netuix.servlets.controls.content.backing.AbstractJspBacking を拡張するものでなければならない。
バッキング ファイル (ヘッダとフッタのプロパティ)
読み取り専用
シェルのヘッダまたはフッタ JSP の表示前の事前処理に使用されるシェル内で参照されるクラス。この値は、.shell ファイルの <header> または <footer> タグにおける <netuix:jspContent> "backingFile" 属性から読み込まれる。デスクトップに異なるシェルを選択すると、ここに別の値が表示される可能性がある。
[コンテンツ プレゼンテーション クラス]
省略可能
コンポーネントのスケルトンによって使用されるデフォルトの CSS クラスをオーバーライドする CSS クラス。
適切な表示を行うには、ルック アンド フィールで選択したスキンのカスケーディング スタイル シート (cascading style sheet : CSS) 内にそのクラスが存在し、スキンの skin.xml ファイルがその CSS ファイルを参照している必要がある。
サンプル : 「my-custom-class」と入力した場合、デフォルトのスケルトンから表示される HTML は、次のようになる。
<div class="my-custom-class">
入力するプロパティは、コンポーネントの親 <div> タグに追加される。ブック、ページ、ポートレットに関して、[コンテンツ プレゼンテーション クラス] プロパティを使用して、コンポーネントのコンテンツ/子 <div> タグのプロパティを設定する。特に、コンテンツのスクロールと高さ設定を有効化するスタイル クラスの設定を行う。
[コンテンツ プレゼンテーション スタイル]
省略可能
省略可能。主な用途は、コンテンツのスクロールおよびコンテンツの高さの設定である。
スクロールでは、以下のいずれかの属性を入力する。
  • overflow-y:auto - 縦スクロール (Y 軸) を可能にする。
  • overflow-x:auto - 横スクロール (X 軸) を可能にする。
  • overflow:auto - 縦および横スクロールを可能にする。
高さの設定では、以下の属性を入力する。
  • height:200px
ここで、200px の部分には、HTML の有効な高さを設定する。
[プレゼンテーション スタイル] プロパティの場合と同様に、コンテンツに他のスタイル プロパティを設定することもできる。プロパティは、コンポーネントのコンテンツ/子 <div> タグに適用される。
[コンテンツ URI]
読み取り専用
デスクトップのヘッダまたはフッタにコンテンツを表示するのに使用される、シェル内で参照される JSP ファイル。この値は、.shell ファイルの <header> または <footer> タグにおける <netuix:jspContent> "contentUri" 属性から読み込まれる。デスクトップに異なるシェルを選択すると、ここに別の値が表示される可能性がある。
[デフォルト ページ]
必須
デスクトップがアクセスされたときにデフォルトで表示されるページを選択する。このリストには、ポータル内のすべてのページの定義ラベルが入る。
[定義ラベル]
必須
各コンポーネントにユニークな識別子が必要。デフォルト値が自動的に入力されますが、その値を変更できます。定義ラベルは、ブック、ページ、またはポートレットへの移動に使用できる。また、コンポーネントは、資格および委託管理のために定義ラベルを備えていることが必要である。
この値を Workshop for WebLogic で編集してわかりやすい値にすることが望ましい。特に、ブック、ページ、またはポートレットをリモートで提供する場合は、そうすることでプロデューサ リストからの識別が容易になる。
WebLogic Portal Administration Console のデスクトップにポータル リソース インスタンスを作成する場合、生成された定義ラベルは編集できない。
.book および .page 定義ラベルについて: ポータル内に (同じ定義ラベルを持った) 同じ .book や .page ファイルが複数含まれるのを防ぐ。たとえば、ポータル内で同じ .book.page ファイルのネストされた埋め込みを使用すると、複製された定義ラベルが存在するため、表示の問題が発生します。
[編集可能]
省略可能
ドロップダウン メニューには次の選択項目が表示される。
  • [編集不可]
  • [メニューで編集]
  • [タイトルバーで編集]
訪問者ツールを有効化してユーザがブック プロパティを変更できるようにする場合は、[編集可能] を [タイトルバーで編集] または [メニューで編集] に設定すると、その場所に訪問者ツールのリンクが配置される。
[メニューで編集] は、ナビゲーション プロパティのメニュー タイプを選択した場合のみ使用できる。[タイトルバーで編集] や [メニューで編集] を選択すると、プロパティ エディタにモード プロパティのグループが表示される。
[エンコーディング]
省略可能
この選択項目は、.portal ファイルを編集中にポータル ビューまたはアウトライン ビューからデスクトップ要素を選択すると、使用できる。
ポータルの表示に使用するエンコーディングを選択する。ディフォルトは、UTF-8 です。ドロップダウン メニューを使用して値を選択できる。このドロップダウン メニューには、5 つの一般的な IANA エンコーディングの選択項目がある。または、フィールドに値を入力することもできる。コンポボックスに表示される値は説明用の表示名であり、.portal ファイルに保存されるときに実際の IANA 名に変換されます。
拡張エンコーディング セットから、エンコーディング用に IANA 名、エリアス、または標準名として名前を入力することもできる。ドロップダウン メニューに表示されない値を入力して、〔Enter〕を押すかフィールドの外部をクリックすると、バリデータは入力値を検証する。エンコーディングの検証に失敗すると、警告メッセージが表示される。値を変更するか、または受け入れることもできる。フィールドに示された値は .portal ファイルに保存される。
文字セットは以下のリソースに基づいており、通常は次の順序となる。
  1. ポータルのエンコーディング (デスクトップの「エンコーディング」属性)
  2. netuix-config.xml のデフォルトのエンコーディング セット
  3. weblogic.xml<jsp-descriptor> 要素のエンコーディング セット。
  4. 内部 WebLogic Server/WebLogic Portal のデフォルト値。
[エラー ページ URL]
読み取り専用
contentUri JSP でエラーが発生した場合に、デスクトップのヘッダまたはフッタにエラー メッセージを表示するのに使用されるシェル内で参照されるファイル。この値は、.shell ファイルの <header> または <footer> タグにおける <netuix:jspContent> "errorUri" 属性から読み込まれる。デスクトップに異なるシェルを選択すると、ここに別の値が表示される可能性がある。
[フロー]
読み取り専用
[フローの使用] プロパティが true に設定されている場合、この値は vertical または horizontal にできる。フローは、プレースホルダに入れられたブックまたはポートレットが、上下 (vertical) に並べられるか、左右 (horizontal) に並べられるかを決定する。この値は、ページの選択されたレイアウト タイプの .layout ファイルから読み込まれる。
[非表示]
省略可能
ポータル コンポーネントのナビゲーション タブを非表示にして、直接アクセスできないようにする。ページまたはブックへは、(定義ラベルへの) リンクまたはバッキング ファイルを使用してアクセスできる。
[レイアウト タイプ]
必須
ブックおよびポートレットをプレースホルダまたはページ上に配置するためのページ レイアウト スタイルを選択する。ドロップダウン メニューには次の選択項目がある。
  • Two Column Layout
  • Three Column Layout
  • Single Column Layout
  • Four Column Layout
ルック アンド フィール
必須
デフォルトのデスクトップの外観 (スキンおよびスケルトンの組み合わせ) を決定するルック アンド フィールを選択する。
[ナビゲーション]
必須
ブックおよびページ間でのナビゲーションに使用するメニューのデフォルトのタイプを選択する。ドロップダウン メニューには次の選択項目が表示される。
  • 単一レベル メニュー - ブックの直接のページと子ブックについて、1 行分のタブが表示されます。
  • 複数レベル メニュー - ブック内のすべてのブックとページについて、階層メニューが再帰的に表示されます。つまり、このメニューが表示されるのは、最初の子だけではありません。ツリー全体が表示されます。親ブックで複数レベル メニューが使用されている場合は、子ブックにも複数レベル メニューが適用されるため、その子ブックではメニューを使用しません。複数レベル メニューに関するパフォーマンスについては、「最適なパフォーマンスを得るためのポータルの設計」を参照してください。
  • [ナビゲーションなし]
[リモートとして提供] (バージョン 9.2 の新しいプロパティ)
省略可能
このリソースが WSRP コンシューマに提供されるかどうかを示す。デフォルトの値は true
.page または .book ファイルが開いている時にエディタ内のページまたはブックを選択すると、この属性はプロパティ ビューに表示される。.portal ファイルのページおよびブックでは、この属性は表示されない。
[方向]
省略可能
ブックの上下左右のいずれかの側にナビゲーション メニューを位置付けるためのスケルトンへのヒント。このプロパティをサポートするには、独自のスケルトンを構築する必要がある。次の値は、各方向値について .portal ファイルで使用されている数値である。上 = 0、左 = 1、右 = 2、下 = 3。
[圧縮]
省略可能
展開モードでも圧縮モードでもブックまたはページを表示するためにスケルトンが使用できる表示ヒント。このプロパティをサポートするには、独自のスケルトンを構築する必要がある。
[圧縮] = 「false」 (デフォルト値) の場合、ブックまたはページが占める水平方向のスペースは可能な限り大きくなる。
[圧縮] = 「true」の場合、ブックまたはページが占める水平方向のスペースは可能な限り小さくなる。
HTML 側から見ると、このプロパティはウィンドウがテーブルを使用して表示される場合に最も有用である。[圧縮] =「false」の場合、テーブルの相対的な幅は通常「100%」に設定される。[圧縮] =「true」の場合、通常、テーブルの幅は設定されないままである。
[プレースホルダの幅]
読み取り専用
プレースホルダに設定された幅を表示する。この値は、ページの選択されたレイアウト タイプの .layout ファイルから読み込まれる。
[プレゼンテーション クラス]
省略可能
コンポーネントのスケルトンによって使用されるデフォルトの CSS クラスをオーバーライドする CSS クラス。
適切な表示を行うには、ルック アンド フィールで選択したスキンのカスケーディング スタイル シート (cascading style sheet : CSS) 内にそのクラスが存在し、スキンの skin.xml ファイルがその CSS ファイルを参照している必要がある。
サンプル : 「my-custom-class」と入力した場合、デフォルトのスケルトンから表示される HTML は、次のようになる。
<div class="my-custom-class">
入力するプロパティは、コンポーネントの親 <div> タグに追加される。ブック、ページ、ポートレットに関して、[コンテンツ プレゼンテーション クラス] プロパティを使用して、コンポーネントのコンテンツ/子 <div> タグのプロパティを設定する。特に、コンテンツのスクロールと高さ設定を有効化するスタイル クラスの設定を行う。
[プレゼンテーション ID]
省略可能
コンポーネントについて表示される HTML タグに挿入されるユニークな ID。入力した値 (ポータル内のすべてのプレゼンテーション ID 間でユニークにする) は、コンポーネントのスケルトンによって挿入される可能性がある ID をオーバーライドする。使い方の例としては、JavaScript の動作対象となり得るユニークな ID の挿入など。
サンプル : 12345 と入力した場合、デフォルトのスケルトンから表示される HTML は、次のようになる。
<div id="12345">
[プレゼンテーション スタイル]
省略可能
ポータル コンポーネントについて挿入する HTML スタイル属性。この属性はスタイル シートのクラス属性に相当し、スタイル シート クラスのすべての属性をオーバーライドする。複数のエントリがある場合はセミコロンで区切る。
サンプル : ポートレット タイトルバーについて {background-color: #fff} と入力すると、デフォルトのスケルトンから表示される HTML は、次のようになる。
<div class="bea-portal-window-titlebar" style="{background-color: #fff}">**
また、ポートレット タイトルバーの背景色は白になる。入力した background-color 属性は、bea-portal-window-titlebar クラスの background-color 属性をオーバーライドする。
入力するプロパティは、コンポーネントの親 <div> タグに追加される。ブック、ページ、ポートレットに関して、[コンテンツ プレゼンテーション スタイル] プロパティを使用して、コンポーネントのコンテンツ/子 <div> タグのプロパティを設定する。特に、コンテンツのスクロールと高さ設定を行う。
[プロパティ]
省略可能
オブジェクトと関連付ける、名前と値のペアのセミコロン区切りリスト。このデータをスケルトンで活用して表示に変更を加えることができる。
[パブリックなアクセス] (バージョン 9.2 の新しいプロパティ)
省略可能
このリソースがパブリックに表示されるかどうかを示す。デフォルトの値は true
.page または .book ファイルが開いている時にエディタ内のスタンドアロン ページまたはブックを選択すると、この属性はプロパティ ビューに表示される。.portal ファイルのページおよびブックでは、この属性は表示されない。
[デフォルト ページに戻る]
省略可能
ブックを選択した時に表示されるページを決定する。
[デフォルト ページに戻る] =「false」 (デフォルト値) の場合、ブックが選択されると、ブック内でアクティブな最後のページが表示される。
[デフォルト ページに戻る] =「true」の場合、[デフォルト ページ] プロパティで選択されたページは、ブックが選択されると常に表示される。
このオプションの動作の詳細については、「[デフォルト ページに戻る] 属性の動作」を参照してください。
[ロールオーバ画像]
省略可能
ブックまたはページのタイトルの横に表示されるアイコンのロールオーバ画像へのパス。
指定したパスはプロジェクトに関連していない可能性があるため、Workshop for WebLogic は画像を見つけることができず、ポータル エディタのブック タブやページ タブには表示されない。画像パスは、選択したルック アンド フィールに関連付けられた skin.xml ファイルで指定されている画像検索パスに関連している必要がある。
[選択済み画像]
省略可能
ブックまたはページのタイトルの横に表示されるアイコンにオーバーライドする画像を選択する。この画像は、選択済みページのタブ上に表示される。
指定したパスはプロジェクトに関連していない可能性があるため、Workshop for WebLogic は画像を見つけることができず、ポータル エディタのブック タブやページ タブには表示されない。画像パスは、選択したルック アンド フィールに関連付けられた skin.xml ファイルで指定されている画像検索パスに関連している必要がある。
シェル
必須
ブック、ページ、およびポートレットの外部領域のデフォルト シェルを選択する。シェルはデスクトップのヘッダおよびフッタの内容を決定する。
[スケルトン URI]
省略可能
ポータル コンポーネントの表示に使用されるスケルトン JSP へのパス (プロジェクトを基準とした相対パス)。この JSP は、デスクトップ用に選択されたルック アンド フィールで使用するスケルトン JSP をオーバーライドする。たとえば、/frameworks/myskeletons/mytitlebar.jsp のように入力する。
[テーマ]
省略可能
ブックおよびページに適用される。ブックまたはページに、デスクトップの他の部分と異なるルック アンド フィールを与えるためにテーマを選択する。
[タイトル]
必須 (プレースホルダの読取り専用)
ポータル コンポーネントのタイトルを入力する。ページ タイトルはページ タブに表示され、ポートレット タイトルはポートレット タイトル バーに表示される。
プレースホルダには、プレースホルダの名前。この値は読取り専用であり、ページの選択されたレイアウト タイプの .layout ファイルから取得される。
[ツリー最適化]
省略可能
この機能を使用するとパフォーマンスが向上する。特に、大規模なコントロール ツリー (ブック、ページ、ポートレット) があるポータルに有効。このフラグを true に設定すると、ポータル フレームワークによってコントロール ツリーの全体ではなく一部が生成される。ツリー最適化はポータルの動作に多少の変化をもたらすので、必ず事前にポータルで完全なリグレッション テストを実行してから使用すること。詳しくは、「最適なパフォーマンスを得るためのポータルの設計」を参照してください。
[未選択画像]
省略可能
ブックまたはページのタイトルの横に表示されるアイコンにオーバーライドする画像を選択する。この画像は、選択済みページのタブ上に表示される。
指定したパスはプロジェクトに関連していない可能性があるため、Workshop for WebLogic は画像を見つけることができず、ポータル エディタのブック タブやページ タブには表示されない。画像パスは、選択したルック アンド フィールに関連付けられた skin.xml ファイルで指定されている画像検索パスに関連している必要がある。
[フローの使用]
読み取り専用
true に設定すると、プレースホルダに入れられたブックおよびポートレットは、[フロー] プロパティの値に応じて配置される。この値が false に設定されている場合、デフォルトのフロー (vertical) が使用される。この値は、ページの選択されたレイアウト タイプの .layout ファイルから読み込まれる。
[表示対象]
省略可能
タイトルバーやメニューの編集アイコンを非表示にするか (false)、表示する (true)。[表示対象] を「false」に設定するのは、たとえば、デスクトップ ヘッダに編集 URL を表示する場合である。
ポータル デザイナでプレースホルダを選択すると、以下の読み取り専用プロパティが [プロパティ エディタ] ウィンドウに表示される。これらのプロパティの値は読み込み専用で、ページに選択したレイアウト タイプに対応する .layout ファイルから読み込まれる。

 


プロジェクトへの J2EE ライブラリ ファイルのコピー

共有 J2EE ライブラリのリソースは、ポータル Web プロジェクトにコピーしてからカスタマイズすることで、オーバーライドできます。

警告 : J2EE ライブラリのリソースをプロジェクトにコピーすると、将来 WebLogic Portal 製品を更新するときに、これらのリソースに影響する製品の変更を手動で組み込む作業が必要になる場合があります。今後配布されるパッチをインストールした場合、WebLogic Portal では、コピーされた J2EE ライブラリ リソースがプロジェクトにないコンフィグレーションのみサポートされます。

J2EE ライブラリのリソースをプロジェクトにコピーするには、以下の手順を実行します。

  1. 現在、マージ済みプロジェクト ビューが表示されていない場合は追加します。これには、次の手順を行います。
  2. [ウィンドウ|ビューの表示|マージ済みプロジェクト] を選択します。

    マージ済みプロジェクト ビューは、デフォルト ポータル パースペクティブの一部で、[パッケージ・エクスプローラ] ビューと同じ領域に表示されます。

  3. まだ選択していない場合は、マージ済みプロジェクト ビューを選択します。
  4. マージ済みプロジェクト ビューの斜体の項目は、共有 J2EE ライブラリに格納されているエンティティを表します。作成したポータル ファイルなど、ファイル システムに格納されているエンティティはすべて、通常の書体で表示されます。

  5. 表示ツリーを展開して、プロジェクトにコピーするリソースを表示します。
  6. 1 つのファイル、ファイルのセット、またはフォルダ全体をプロジェクトにコピーすることができます。

  7. コピーするリソースを右クリックして、[プロジェクトにコピー] を選択します。
  8. リソースがプロジェクトの Web コンテンツ フォルダにコピーされ、J2EE ライブラリ内のそれらのリソースの場所の階層に反映されます。

注意 : マージ済みプロジェクト ビューでファイルの [プロパティ] ダイアログを表示するには、ファイルを右クリックして [プロパティ] を選択します。このダイアログには、J2EE ライブラリの名前やバージョンなど、そのファイルの J2EE ライブラリの情報が表示されます。

共有 J2EE ライブラリ ファイルをオーバーライドするファイルの表示

次のいずれかの方法を使用して、J2EE ライブラリ ファイルをオーバーライドするローカル ファイルを表示できます。

 


ユーティリティ プロジェクトの作成

ユーティリティ プロジェクトでは、Web サービス、制御、EJB など、直接的に特別なエンティティの一部にはならない汎用的な Java コードを開発します。表 8-2 に、ユーティリティ プロジェクトとして追加できる WebLogic Portal J2EE ライブラリのいくつかを示します。

表 8-2 ユーティリティ プロジェクトに追加する一般的な WebLogic Portal ライブラリ
J2EE ライブラリ
目的
ライブラリの依存関係
p13n-app-lib
他のすべての WebLogic Portal ライブラリに必要な基本ライブラリ。
なし。
wlp-services-app-lib
カスタム プレースホルダの作成に必要なポータル アプリケーションのクラスを含む。
p13n-app-lib
wlp-framework-full-app-lib
ポータル フレームワークのカスタマイズのクラスを含む。
p13n-app-lib
wlp-tools-app-lib
Portal Administration Console フレームワーク関連のコントロールとクラスを含む。
wlp-services-app-lib
wlp-framework-full-app-lib

このセクションで示す手順は、[パッケージ・エクスプローラ] ビューの src フォルダに関係します。src ディレクトリは、名前が変更されている可能性があります。

以下の手順を実行して、ユーティリティ プロジェクトを作成します。

  1. Workshop for WebLogic で以下の手順を実行して、ユーティリティ プロジェクトを作成します。
    1. ポータル パースペクティブで、[ファイル|新規|プロジェクト] を選択します。
    2. [新規プロジェクト - ウィザードを選択] ウィンドウで、[J2EE] フォルダを展開し、[Utility Project] を選択します。[次へ] をクリックします。
    3. [新規 Java コンポーネント・モジュール - Utility Module] ダイアログで、ユーティリティ プロジェクトの名前を入力し、[デフォルトの使用] チェック ボックスが選択されていることを確認します。図 8-9 に示すように、[Add project to an EAR] チェック ボックスを選択して、[次へ] をクリックします。
    4. 図 8-9 プロジェクト名の入力


      プロジェクト名の入力

    5. [新規 Java コンポーネント・モジュール - Select Project Facets] ダイアログで、有効にするファセットを選択し、[終了] をクリックします。新しいユーティリティ プロジェクトは、自動的に EAR プロジェクトに関連付けられます。
  2. ユーティリティ プロジェクトのリソースが、サーバからと同じようにプロジェクトから見えるようにするために、WebLogic Portal Server および適切な J2EE ライブラリの CLASSPATH コンテナをプロジェクトに追加します。次の手順を実行します。
    1. パッケージ エクスプローラで、作成したポータル ユーティリティ プロジェクトを右クリックし、[プロパティ] を選択します。
    2. プロパティ ダイアログで、[Java のビルド・パス] を選択し、[ライブラリー] タブを選択します。
    3. 図 8-10 に示すように、[ライブラリの追加] をクリックします。
    4. 図 8-10 ライブラリの追加


      ライブラリの追加

    5. 図 8-11 に示すように、[ライブラリーの追加] ダイアログで、ライブラリ タイプとして [BEA WebLogic Portal Server] を選択し、[次へ] をクリックします。
    6. 図 8-11 BEA WebLogic Portal Server の選択


      BEA WebLogic Portal Server の選択

    7. [ライブラリーの追加 - BEA WebLogic Portal Server] ダイアログで、[コンフィグレーションされたすべてのエントリ] を選択し、[終了] をクリックして、サーバの CLASSPATH エントリをコンフィグレーションします。
    8. プロパティ ダイアログで、[ライブラリー] タブの [ライブラリーの追加] をクリックします。
    9. [ライブラリーの追加] ダイアログで、[WebLogic J2EE ライブラリ] を選択し、[次へ] をクリックします。
    10. [ライブラリーの追加] - [WebLogic J2EE ライブラリ] ダイアログで、[参照] をクリックし、必要なライブラリを選択して、[OK] をクリックします。[仕様バージョン] および [実装バージョン] フィールドに値が入力されています。[新しいバージョンを許可] チェック ボックスを選択し、[終了] をクリックします。
    11. プロパティ ダイアログで [OK] をクリックします。

 


ページ フローのカスタム コントロール

WebLogic Portal には、開発を容易にし、自動化するためのカスタム Java コントロールがあります。このコントロールは、ページ フローにドラッグ アンド ドロップできるアクション (Java メソッド) の集合です。グラフィカル インタフェースにアクションを追加し、Workshop for WebLogic エディタでアクションをコンフィグレーションできるので、Java コードを直接操作する必要はありません (ソース ビューで直接コードを操作することもできます)。コードを直接操作する場合でも、最初にグラフィカル インタフェースで操作することにより、コード入力を自動化し、構文エラーをなくすことができます。

たとえば、WebLogic Portal に付属するカスタム コントロールでは、一部のメソッドで組み込みのフォームを利用できます。ユーザを作成するアクションが必要な場合、ユーザ プロバイダ コントロールの createUser メソッドを使用できます。createUser メソッドをコントロールのアクション領域に追加すると、JSP に追加しアクションに自動的にリンクできる CreateUserForm Bean をコントロールで利用できます。

Workshop for WebLogic を使用してページ フローを作成する方法の詳細については、『BEA Workshop for WebLogic Platform プログラマーズ ガイド』を参照してください。WebLogic Portal で提供される特定のコントロールの詳細については、「コントロールの Javadoc」を参照してください。

以降の節では、WebLogic Portal が提供するコントロールをページ フローで使用する方法について説明します。

ページ フローへのポータル コントロールの追加

ページ フローにコントロールを追加するには

  1. 既存のページ フロー (.jpf ファイル) を開くか、新しいページ フローを作成します。
  2. Workshop for WebLogic を使用してページ フローを作成する方法の詳細については、『BEA Workshop for WebLogic Platform プログラマーズ ガイド』を参照してください。

  3. ページ フロー パースペクティブをまだ使用していない場合は、そのパースペクティブに切り替えるかどうかを Workshop for WebLogic から確認されます。メッセージに従って切り替えます。
  4. 図 8-12 に示すように、ページ フローのソース ビューを右クリックして、[挿入|コントロール] を選択します。
  5. 図 8-12 [挿入|コントロール] メニューの選択


    [挿入|コントロール] メニューの選択

    図 8-13 に示すように、[コントロールの選択] ダイアログが表示されます。

    図 8-13 [コントロールの選択] ダイアログ


    [コントロールの選択] ダイアログ

  6. 必要なフォルダを展開して、追加するコントロールを選択します。
  7. [OK] をクリックして、ページ フローにコントロールを追加します。

これで、コントロールのすべてのメソッドがページ フローで使用できます。

ページ フローへのアクションの追加

図 8-14 に示すように、ページ フロー エクスプローラ ビューからページ フロー エディタのフロー ビューにメソッドをドラッグすることにより、ページ フローにメソッド (アクション) を追加できます。

図 8-14 フロー ビューを使用したページ フローへのアクションの追加

フロー ビューを使用したページ フローへのアクションの追加

ポータル コントロールのセキュリティ

多くのポータル フレームワーク コントロールには保護されたメソッドが装備されています。つまり、コントロールがこれらのメソッドを実行するには、認可されたセキュリティ ロールが必要になります。ページ フローでは、アクションごとにセキュリティ ロールを指定できます。アクションを実行する場合、実行するユーザは所定のロールのメンバーでなければなりません。たとえば、ユーザ プロバイダ コントロールには removeUser() アクションがありますが、このアクションの呼び出し側は「Framework SystemAdministrator」ロールまたは「Admin」ロールに所属している必要があります。

ユーザおよびグループ管理アクションでは、WebLogic Administration Portal の認証セキュリティ プロバイダ サービスで指定したロールによって、ユーザがアクションを実行できるかどうかが決まります。

WebLogic Server Administration Console を使用して、ドメインにセキュリティ ロールを追加できます。

 


ポータルのデプロイおよび表示

ポータルをサーバにデプロイ (公開) すると、ブラウザ ウィンドウに表示できます。

注意 : Eclipse の問題のため、一部の JSP タグは、実際には正しい場合でも、エラーが含まれているものとしてマークされます。実際にはエラーが存在しないにもかかわらず、Eclipse ではそのアプリケーションは公開 (デプロイ) されません。このような場合は、公開前に JSP 検証を無効にする必要があります。これらのタグが原因の問題を除くすべての問題の修正が完了するまで、JSP 検証を有効にしておく。デプロイ前に、[ウィンドウ|設定] を選択し、ツリーの [妥当性検査] を選択し、[JSP 構文バリデーター] チェック ボックスのチェックをはずす。

ポータル プロジェクトをデプロイ (公開) し、表示するには、以下の手順に従います。

  1. 図 8-15 に示すように、[パッケージ・エクスプローラ] ビューで、ポータルの .portal ファイルを右クリックして、[実行|サーバで実行] を選択します。
  2. 注意 : 多くの場合、ポータルを再デプロイして、行った変更を確認する必要はありません。詳細については、「サーバでのプロジェクトの実行」を参照してください。
    図 8-15 サーバでのポータルの実行の選択


    サーバでのポータルの実行の選択

    [サーバで実行 - 新規サーバの定義] ダイアログが表示されます。使用するサーバが強調表示されていることを確認します。

  3. [終了] をクリックし、デプロイメント処理を開始します。
  4. サーバが起動されるまで待機し、ファイルをサーバにデプロイして、アプリケーションを実行します。デプロイメントが進行している間、ウィンドウ下部のステータス バーにステータス メッセージが表示されます。

    図 8-16 に示すように、エディタ ビューの新しいタブに結果が表示されます。

    ヒント : 以前に同じ名前のプロジェクトをデプロイし、そのプロジェクトが別の場所にある場合、サーバからそのプロジェクトをアンデプロイする必要があります。アンデプロイするには、サーバ ビューでサーバをダブルクリックし、[パブリッシュされたモジュール] リストから該当するポータル Web プロジェクト (共有 J2EE ライブラリではありません) を削除します。この作業の詳細については、『BEA Workshop for WebLogic Platform プログラマーズ ガイド』の「サーバの管理」を参照してください。
    図 8-16 ワークベンチ エディタ ビューでのポータルの表示


    ワークベンチ エディタ ビューでのポータルの表示

    ヒント : 必要に応じて、ポータルを表示する場合に常に外部 Web ブラウザを使用するように設定できます。このブラウザを使用するには、[ウィンドウ|設定] を選択し、プロパティ ツリーで [一般|Web ブラウザー] を選択して、[外部 Web ブラウザーを使用] ラジオ ボタンを選択します。

 


URL の操作

以下の節では、WebLogic Portal で URL を操作する方法について説明します。

ポータル リソースへの URL の作成

WebLogic Portal は、特にサーバ名とポート番号を変更したときに途切れることなく、ドメインからドメインに転送できるポータル Web プロジェクト内のポータル リソースに URL を作成する便利で拡張可能なメカニズムを用意しています。この URL 作成メカニズムは、セキュア URL と非セキュア URL (http と https) 間で切り替えることができます。

移植可能な URL を作成するには、次の 2 つの項目が必要です。

beehive-url-template-config.xml ファイルには、ユニークな名前を持つ複数の URL「テンプレート」が含まれています。これらのテンプレートの URL には、url:domainurl:port などの変数が含まれ、これらはアクティブなサーバから読み込まれます。<render:*Url> JSP タグには、beehive-url-template-config.xml ファイル内の URL テンプレートの名前を指定できる「テンプレート」属性があります。

表 8-3 に、JSP タグでテンプレートを使用して URL を作成する方法を示します。

表 8-3 テンプレートを使用して URL を作成する JSP タグの例
beehive-url-template-config.xml
<render:resourceUrl>
以下に beehive-url-template-config.xml の URL テンプレートのサンプルを示す。
<url-template name="secure-url">
https://{url:domain}:{url:securePort}/{url:path}?{url:queryString}
</url-template>
以下に <render:resourceUrl> JSP タグでテンプレートを使用して URL を作成する方法を示す。
<% String reportpath = "reports/report1.html"; %>
<a href="<render:resourceUrl template="secure-url" path="<%=reportpath%>"/>">
View the Report
</a>

WebLogic Portal に付属する beehive-url-template-config.xml ファイルにある任意の URL テンプレートを使用できると共に、必要な数のテンプレートをファイルに追加することができます。

URL テンプレートを構築する場合、以下の変数を使用できます。

URL 圧縮

URL 文字列が応答 HTML の大きな割合を占める場合があります。WebLogic Portal の URL 圧縮メカニズムは、より短い URL を作成するプラグイン可能な手段を提供します。次に例を示す。

以下は URL 圧縮を実装する前の URL です。

http://abc.com/webapp/portletEvents/activatePage/activatePage.portal?_nfpb=true&_windowLabel=pfTPC_source_1&pfTPC_source_1_actionOverride=%2FportletEvents%2FactivatePage%2FtoPage1

以下は URL 圧縮を実装した後の URL です。

http://abc.com/wlp.c?__c=7f6

WebLogic Portal は、文字列をデータベースにマッピングすることによって URL 圧縮を実装します。Web アプリケーション レベルの設定を使用して、URL 圧縮を設定します。処理は GenericURL クラスを介して呼び出されます。

デフォルトのアルゴリズムでは、マッピング用に 2 つの p13n キャッシュ (wlp.urlCompression.compressed と wlp.urlCompression.expanded) が使用されます。これらのキャッシュは、framework-full-app ライブラリ モジュールの p13n-cache-config.xml にあります。

URL 圧縮の実装

URL 圧縮を使用するように Web アプリケーションをコンフィグレーションするには、以下の手順に従います。

  1. 次の例に示すように、web.xml に圧縮サーブレットを定義します。
  2. <servlet>
       <servlet-name>UrlCompressionServlet</servlet-name>
       <servlet-class>com.bea.portlet.compression.UrlCompressionServlet
       </servlet-class>
       <init-param>
          <param-name>defaultPage</param-name>
          <param-value>/index.jsp</param-value>
       </init-param>
       <init-param>
          <param-name>errorPage</param-name>
          <param-value>/errors/error.jsp</param-value>
       </init-param>
       <load-on-startup>1</load-on-startup>
    </servlet>

  3. 次の例に示すように、圧縮パターンをマッピングします。
  4. <servlet-mapping>
       <servlet-name>UrlCompressionServlet</servlet-name>
       <url-pattern>wlp.c</url-pattern>
    </servlet-mapping>

  5. 圧縮を適用するテンプレートにトークン {url:compression} を追加します。

URL 圧縮に関する特別な考慮事項

以下の節では、URL 圧縮を実装する際に特に考慮すべきいくつかの点について説明します。

URL 圧縮と AJAX

URL 圧縮は、ポートレットの非同期表示に関連する、ページ更新のための AJAX 固有のメカニズムの一部を妨害します。このため、コンテンツの非同期表示が無効でページ更新が強制される場合は、必ず URL 圧縮を無効にする必要があります。WebLogic Portal では、ファイルのアップロード フォームが使用される場合を除き、URL 圧縮が自動的に無効になります。その場合は、URL 圧縮を明示的に無効にする必要があります。詳細については、『ポートレット開発ガイド』を参照してください。

URL 圧縮を正しく実装するには、ポータル開発者はベスト プラクティスを遵守し、サポートされている URL タグとクラスを使用して URL を生成する必要があります。

URL 圧縮と オフサイト URL

オフサイト URL は、URL を生成するコードの Web アプリケーションでホストされないリソースの URL です。 圧縮が有効化された Web アプリケーションでは、GenericURL、そのサブタイプ、または対応する JSP タグを使用してオフサイト URL を生成する場合は、圧縮を無効にした URL テンプレートを指定する必要があります。

次のコード例をガイドとして使用できます。

GenericURL redirectURL = GenericURL.createGenericURL(request, response); redirectURL.setDomain("www.yahoo.com"); redirectURL.setPort(80); redirectURL.setPath("/compressedUrl/index.html"); redirectURL.setTemplate("no_compression_template");

ここで、「no_compression_template」は、{url:compression} 擬似トークンを除外する URL テンプレートの名前である。

URL のトラブルシューティング

プロキシ サーバを使用したり、非セキュアなポートとセキュアなポートの間で切り替えているとき、{url:port} または {url:securePort} 変数を使用している場合は URL が解決されないことがあります。これは、その値に対する変数がリクエストから読み込まれるためです。たとえば、非セキュアなポート (ポート番号 80) にいるユーザが {url:securePort} 変数を使用する URL テンプレートで作成されたセキュアな https リンクをクリックすると、request (80) というポート番号が {url:securePort} 変数に対して使用されますが、これは非セキュアなポートでセキュア リクエスト (https) を作成します。プロキシ サーバ (ポート 80) にいるユーザがプロキシ サーバ (ポート 443) の外にあるリソースへのリンクをクリックした場合も同様です。

どちらの場合も、正しく解決される URL を取得するように、URL テンプレートにポート番号をハード コーディングする必要があります。

URL テンプレートと Web Services for Remote Portlets (WSRP)

beehive-url-template-config.xml ファイルは、すべてのポータル Web プロジェクトに (J2EE 共有ライブラリを介して) 自動的に組み込まれます。このファイルには、コンシューマでの URL の書き換えをサポートするために必要な URL テンプレートが含まれています。Web アプリケーションを WSRP プロデューサとして使用することを予定している場合は、これらの URL テンプレートや変数を beehive-url-template-config.xml ファイルから削除しないでください。

ポータル URL 内のアンパサンド

WebLogic Portal は、WebLogic Portal が生成した URL の形式をコンフィグレーションするために、Beehive コンフィグレーション ファイル beehive-url-template-config.xml を使用します。アンパサンド エンティティ (&amp) またはアンパサンド文字 (&) を使用するための Beehive コンフィグレーション要素は、NetUI コンフィグレーション ファイル beehive-netui-config.xml にあります。HTML コンフィグレーションでは、アンパサンド文字を使用するように指定するコンフィグレーション要素がないときは、デフォルトでアンパサンド エンティティを使用して URL が生成されます。

XHTML コンフィグレーションでは、コンフィグレーション設定にかかわらず、URL にアンパサンド エンティティが使用されます。

GenericURL クラスの useAmpEntity メソッドおよび setForcedAmpForm メソッドを使用して、手動でコンフィグレーション設定をオーバーライドできます。これらのメソッドの詳細については、Javadoc を参照してください。

WebLogic Portal の以前のリリースが URL 内のアンパサンドをどのように処理するかについては、「ポータル URL 内のアンパサンド」を参照してください。

オプションのルック アンド フィール URL テンプレート

WebLogic Portal のルック アンド フィールは、次の 2 つの条件を満たす場合に、リソース (CSS、Javascript、画像など) のパスに対し ResourceURLs (つまり、URL リライタ) を使用します。

ルック アンド フィールのリソース固有の URL テンプレートを、「lookandfeel-url-templates」という名前のリファレンス グループで指定できます。このグループには、「laf-resource」キーと「window-resource」キーの両方またはどちらか一方を含める必要があります。「laf-resource」キーは、スキンまたはスケルトンに関連するリソースに使用し、「window-resource」キーは、ウィンドウの依存関係に関連するリソースに使用します。対応する URL テンプレートの「{url:path}」パラメータを置き換えるには、解決済みの (相対) リソース パスを使用します。以下に、URL テンプレートの構文例として、beehive-url-template-config.xml ファイルの一部を示します。

<url-template>
   <name>laf-resource-template</name>
   <value>http://my.domain.com/resources/laf/{url:path}</value>
</url-template>

<url-template-ref-group>
   <name>lookandfeel-url-templates</name>
   <url-template-ref>
      <key>laf-resource</key>
      <template-name>laf-resource-template</template-name>
   </url-template-ref>
</url-template-ref-group>

ルック アンド フィールの URL テンプレートがない場合、ルック アンド フィールのリソース パスは相対パスのままになります。ただし、リモート ポートレットのコンテキスト内でパスが生成された場合、そのパスは標準「リソース」URL テンプレートを使用します。

オプションの LookAndFeel URL テンプレートは、別のサーバに対してリソースを「オフロード」するために使用できます。ただし、これらのリソースは、コピー (移動ではなく) して、ポータル Web アプリケーションと同じ相対リソース パス (たとえば、.../framework/skins/default/css/book.css) を持つ URL を使用して解決できるようにする必要があります。ルック アンド フィールのパスの解決は、ローカル ファイルシステムのリソースへのアクセスに引き続き依存します。

render taglib の GetSkinPath タグは、オプションのルック アンド フィールの URL テンプレートに影響されません。このタグによって生成されたパスは、どの場合でも相対パスです。

 


HTTP 応答のエンコーディングの処理

この節では、HTTP 応答にエンコーディングを設定する方法について説明します。

WebLogic Portal は、.portal ファイルの情報に基づいて、次のエンコーディング設定方法を使用します。

  1. encoding 属性の netuix:desktop 要素を調べ、要素がある場合はその値を使用する。
  2. 最初の確認で該当しない場合、directive.page 要素の .portal ファイルを調べる。このメカニズムは、非推奨です。その要素がある場合は、属性からエンコーディングを選択します。
  3. <defaultEncoding> 要素に対して netuix-config.xml を調べ、encoding 属性を使用する。
  4. 前の確認で該当しない場合、web.xml ファイルの <jsp-param> セクションにある <encoding> 要素を使用する。このメカニズムは、非推奨です。

この実装は、WebLogic Portal の以前のバージョンの実装とは異なります。詳細については、『WebLogic Portal 9.2 へのアップグレード』の機能の変更に関する付録を参照してください。

エンコーディング設定の使用方法を、次の例で示します。

.portal ファイルの <netuix:desktop ... encoding="UTF-8" />

または

netuix-config.xml ファイルの <defaultEncoding encoding="UTF-8" />

 


Workshop for WebLogic におけるキャッシュ管理

キャッシュを正しくコンフィグレーションすれば、頻繁に使用するデータの検索にかかる時間を大幅に短縮できます。Workshop for WebLogic を使用して、現在実行しているインスタンスの既存のキャッシュの設定を変更したり、キャッシュをフラッシュしたりできます。キャッシュをコンフィグレーションするときは、パラメータを修正してキャッシュの動作または容量を変更します。たとえば、最新の 200 エントリのみ保持するようにキャッシュを設定したり、キャッシュに残す時間 (ミリ秒単位) を設定したりできます。また、キャッシュをフラッシュし、新しく要求された情報はすべてデータベースから取得するようにすることもできます。

Workshop for WebLogic のユーザ インタフェースを使用して、新しいキャッシュを追加することはできません。ただし、EAR プロジェクトのコンテンツ ディレクトリ (デフォルトの名前は EarContent) 内にあるキャッシュ コンフィグレーション ファイル META-INF/p13n-content-config.xml を手動で編集して、キャッシュを追加することができます。必要な場合は、マージ済みプロジェクト ビューからプロジェクトにキャッシュ ファイルをコピーすることもできます。

キャッシュを管理する JSP タグまたはその他の方法の使用については、『パフォーマンス チューニング ガイド』を参照してください。このガイドは、将来のドキュメントのリリースで入手できます。

Workshop for WebLogic を使用して行ったキャッシュの変更は永続的に保持されず、次回アプリケーションを公開したとき、またはサーバを再起動したときに失われます。変更を永続的に保持するには、WebLogic Portal Administration Console を使用します。

キャッシュは読み込み専用であり、クラスタ対応です。

Workshop for WebLogic でのキャッシュ設定の変更

注意 : この節で説明する手順を実行する前に、サーバを稼働させる必要があります。

Workshop for WebLogic でキャッシュ設定を変更するには

  1. [実行|ポータル キャッシュ マネージャ] を選択します。
  2. 現在「実稼動」のキャッシュのリストを含む [ポータル キャッシュ マネージャ] ダイアログが表示されます。このダイアログに表示されるキャッシュは、Administration Console で表示できるキャッシュのスーパーセットで構成されます。[ポータル キャッシュ マネージャ] ダイアログのリストには、コンフィグレーション済みキャッシュの他に、ポータルで使用しているプロセスに基づいて動的にトリガされるキャッシュも含まれます。

  3. 設定を変更するキャッシュを選択します。
  4. 次の表を設定を変更する際のガイドとして使用できます。

    表 8-4 Workshop for WebLogic でコンフィグレーションできるキャッシュ設定
    フィールド/ボタン
    説明
    [有効にする] チェック ボックス
    このチェック ボックスを選択して、キャッシュを有効または無効にする。キャッシュを無効にした場合、キャッシュは存在するが、そのキャッシュへのリクエストには null 値が返される。
    たとえば、プレースホルダまたはコンテンツ セレクタをテストする場合、キャッシュされた値ではなく、データベースの値が返されるようにしなければならないが、このような場合にキャッシュを無効にする必要がある。
    [コンフィグレーション済み]
    この読み込み専用フィールドは、Administration Console を使用してキャッシュがコンフィグレーションされたか、共有ライブラリまたはアプリケーション記述子を使用してキャッシュがコンフィグレーションされたか示す。
    [最大エントリ]
    キャッシュが保持するエントリ (キー) の最大数。この制限に達すると、使用された時期が最も古いキーがキャッシュから削除される。
    [存続期間]
    エントリがキャッシュ内に存続する期間 (ミリ秒単位)。たとえば、値 3600000 (ミリ秒単位) は 1 時間に相当する。
    説明
    この読み込み専用フィールドには、Administration Console で入力された説明か、共有ライブラリあるいはアプリケーション記述子を使用して入力された説明が表示される。
    [ヒット率]
    キャッシュの使用度に関する統計がサーバから返された場合、この読み込み専用フィールドにそれらの情報が表示される。
    [リセット]
    このボタンをクリックして、以前に表示した値のダイアログをリセットする。
    [値の設定]
    ダイアログで値を変更する場合は、[値の設定] をクリックして変更を保存する。ここで値を変更すると、実行中のインスタンスの値のみ変更され、コンフィグレーション済みキャッシュの値は変更されない。
    [フラッシュ]
    このボタンをクリックして、キャッシュのコンテンツをクリアする。
    [フラッシュ] を使用すると、表示されているすべてのキャッシュのコンテンツをクリアできる。Administration Console では、コンフィグレーション済みキャッシュのみフラッシュできる。
    [更新]
    このボタンをクリックしてダイアログをリセットし、新しいキャッシュまたはキャッシュの更新を表示する。新しいキャッシュ、キャッシュの更新がある場合は表示される。

  5. 完了したら、[閉じる] をクリックします。

各キャッシュの詳細については、そのキャッシュに関連する特定の機能のドキュメントを参照してください。たとえば、パーソナライゼーション関連のキャッシュについては、『対話管理ガイド』を参照してください。

 


管理対象サーバ上の WebLogic Server Administration Console のパフォーマンスの向上

管理対象サーバ上でポータル アプリケーションを実行している場合は、以下の例に示すように web.xml ファイルの <context-param> パラメータを使用すると、WebLogic Server Administration Console のパフォーマンスを向上させることができます。

<context-param>
    <param-name>portalFileDirectory</param-name>
    <param-value>/</param-value>
</context-param>

このパラメータは、EAR コンテンツ情報を返す最適化された呼び出しを利用します。このパラメータがないと、呼び出しは .portal ファイルを再帰的に検索します。このパラメータを使用する場合、すべての .portal ファイルをポータル Web アプリケーションの同じディレクトリに配置する必要があります。<param-value> を使用してディレクトリを指定します。上記の例では、すべての .portal ファイルが、Web アプリケーションのルート ディレクトリ (/) にあります。

 


[デフォルト ページに戻る] 属性の動作

移動先 URL の対象であるブックの [デフォルト ページに戻る] 属性が true に設定されている場合、そのブックのデフォルト ページが表示されるはずです。ただし、動作が予期したとおりに行われない場合があります。この節の目的は、このような動作を明確にすることです。

この節では、ブックがネストされていて、メイン ブックの直接の子がブックである場合のみを対象とします。[デフォルト ページに戻る] は、ブック間の移動にのみ適用され、ブック内の移動には適用されません。次に、各ページにブック 2 への URL が設定されたポートレットを含む単純なポータルの階層を示します。

メイン ブック - ブック 2 がデフォルト ブック

ブック 2 - デフォルト ページに戻る = true、デフォルト ページ = ページ 2

ページ 2

ページ 3

ブック 3

ページ 4

ページ 5

このポータルを表示すると、ブック 2 とページ 2 が表示されます。

  1. ユーザがページ 3 をクリックする (デフォルト ページから移動)。
  2. ユーザがブック 3 をクリックする (ページ 4 が表示され、別のブックに移動)。
  3. ユーザがブック 2 の URL をクリックすると、ページ 2 が表示される。

ページ 2 がブック 2 のデフォルトであるため、これは想定されたとおりの動作であり、ブック 2 の最後のアクティブなページはページ 3 です。

このポータルを表示すると、ブック 2 とページ 2 が表示されます。

  1. ユーザがページ 3 をクリックする (デフォルト ページから移動)。
  2. ユーザがブック 2 の URL をクリックすると、ページ 3 が表示される。

これは、ページ 3 が同じブック内にあり、デフォルトに戻る設定が適用されないために発生します。

次のようにメイン ブックの子がページである階層では、デフォルトに戻る設定は適用されません。

メイン ブック - ページ 1 がデフォルト ページ

ページ 1

ブック 2 - デフォルト ページに戻る = true、デフォルト ページ = ページ 2

ページ 2

ページ 3

ページ 6

ブック 3

ページ 4

ページ 5

この階層では、ユーザはブック 2 の最後のアクティブなページに戻ります。

 


既存のポータル Web プロジェクトへのコマース サービスの追加

コマース関連機能を追加せずにポータル EAR プロジェクトやポータル Web プロジェクトを作成した場合は、コマース関連ファセットをプロジェクトに追加して、後でその機能を有効化できます。

コマース機能に直接関連付けられた J2EE 共有ライブラリには、以下のものがあります。

wlp-commerce-app-lib
コマース サポート全般を提供。
wlp-commerce-tools-support-app-lib
コマース (カタログ) の Workshop for WebLogic (ワークベンチ) サポートを提供。
wlp-commerce-web-lib
JSP タグ ライブラリを提供。

コマース機能をポータル アプリケーションに追加するには、以下の手順を実行します。

  1. 既存のプロジェクトへのファセットの追加」の手順に従って、コマース ファセットをポータル EAR プロジェクトに追加します。
  2. 図 8-17 にコマース ファセットを示します。

    図 8-17 ポータル EAR プロジェクト ウィザードのコマース ファセット


    ポータル EAR プロジェクト ウィザードのコマース ファセット

  3. 既存のプロジェクトへのファセットの追加」の手順に従って、コマース ファセットをポータル Web プロジェクトに追加します。
  4. 図 8-18 にコマース ファセットを示します。

    図 8-18 ポータル Web プロジェクト ウィザードのコマース ファセット


    ポータル Web プロジェクト ウィザードのコマース ファセット

コマース サービスの技術的な詳細については、com.bea.commerce.* および com.beasys.commerce.* パッケージの WebLogic Portal Javadoc を参照してください。


  ページの先頭       前  次