ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebCenter PortalおよびOracle JDeveloperでのポータルの開発
11gリリース1 (11.1.1.8.3)
E49666-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

5 WebCenter Portal Frameworkアプリケーションの理解

この章では、WebCenter Portal Frameworkアプリケーションのアーキテクチャ、コンポーネントおよび機能について概説します。

この章の内容は、次のとおりです。

5.1 WebCenter Portal Frameworkアプリケーションとは

WebCenter Portal Frameworkアプリケーションは、ナビゲーション、ページ、ページ・テンプレート、コンテンツなどのポータル機能を含む標準的なADF Webアプリケーションです。この章では、これらの機能について詳しく説明します。

5.2 WebCenter Portal Frameworkアプリケーションの作成

JDeveloperでは、新しいWebCenter Portal Frameworkアプリケーションの作成が容易になります。ウィザードでは、詳細を説明し、必要なプロジェクト構造およびファイルを使用してワークスペースを作成します。このワークスペース内からポータルを開発、デプロイおよびテストします。

フレームワーク・アプリケーションを作成する基本的な手順と、生成されるプロジェクト構造については、第6章「WebCenter Portal Frameworkアプリケーションの作成」を参照してください。

5.3 WebCenter Portal Frameworkアプリケーションの機能の検証

Oracle WebCenter Portal Frameworkにより、多くのポータル固有の機能がADF Webアプリケーションに追加されます。WebCenter Portal Frameworkアプリケーション・テンプレートを使用して新しいアプリケーションを作成する場合には、これらの機能がデフォルトで備わっています。

この項では、理解しておく必要のあるポータルの主な機能について説明します。

5.3.1 機能のサマリー

Portal Frameworkアプリケーションで提供される基本機能は次のとおりです。

  • ページ階層: ページ階層では、ページ間に親子関係を持つツリー構造で編成します。この階層構造により、ページからサブページにセキュリティ設定を簡単に伝播または継承することが可能になります。第5.3.2項「ページ、ページ・テンプレートおよびポータルのページ階層の理解」を参照してください。

  • ナビゲーション・モデル: ナビゲーション・モデルは、ポータルに表示されるナビゲーション・ユーザー・インタフェースにバックエンド・データを提供します。ナビゲーション・モデルは、ページ、タスク・フロー、外部サイト、ポートレットおよび特定のコンテンツ・アイテムへのナビゲーションを制御する幅広いAPIを備え、柔軟性が非常に高くなっています。第5.3.4項「ナビゲーション・モデルおよびナビゲーション・レジストリの理解」を参照してください。

  • ナビゲーション・レジストリ: ナビゲーション・レジストリは、ユーザーがリソース・マネージャを使用して、実行時にナビゲーションに追加できる一連の要素を定義します。リソース・マネージャの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portalの管理』のPortal Frameworkアプリケーションのアセットの管理に関する項を参照してください。第10章「ナビゲーション・モデルの開発」も参照してください。

  • 委任管理: 委任管理はユーザー・ロールに基づきポータル・リソースを保護するためのメカニズムを提供します。たとえば、1つのロール(マネージャなど)のユーザーにすべてのポータル機能へのアクセスを許可し、それ以外のロール(従業員など)のユーザーには特定の機能へのアクセスを拒否できます。ページ階層は、委任管理ではプライマリ・コンテナになります。JDeveloperとブラウザベースの両方の環境において、ページ階層に委任管理を適用すると、特定のセキュリティ割当てが階層を通じて自動的にページやサブ・ページに伝播されます。第74章「WebCenter Portal Frameworkアプリケーションの保護」を参照してください。

  • カスタマイズ: ユーザーは、ポートレットの追加や削除、スキンの変更、ポータルのレイアウトの再配置などにより、独自のポータル・ページをカスタマイズできます。第15章「ページの作成とリソースの追加」を参照してください。

  • ページ・テンプレート: ページ・テンプレートにより、ページ全体のレイアウトを定義してページに適用し、ポータル全体で一貫したレイアウトを作成できます。詳細は、第5.6項「ポータルのルック・アンド・フィールの開発」を参照してください。『Oracle Fusion Middleware Oracle Application Development Framework Webユーザー・インタフェース開発者ガイド』のページ・テンプレートの使用に関する項も参照してください。

  • カタログおよびカタログ・レジストリ: カタログは、タスク・フロー、ポートレット、コンテンツ・アイテム、および実行時にアプリケーションに追加できるその他の要素の任意のコレクションです。第14章「リソース・カタログの開発」を参照してください。

  • カタログ・レジストリ: カタログ・レジストリは、リソース・カタログに含めることができる一連のアイテムを定義します。第14章「リソース・カタログの開発」を参照してください。

  • スキン: スキンは、ポータル内のルック・アンド・フィールを整合させるためにアプリケーション・コンポーネントの色、フォント、イメージ、および高さや幅など一部のディメンションの詳細を定義します。第13章「スキンの開発」を参照してください。

  • ポータル・プリファレンス: デフォルトのナビゲーション・モデル、ページ・テンプレート、その他のコンポーネントなどポータル向けのデフォルト・プリファレンスを変更できます。第5.7項「デフォルトのポータル・プリファレンスの変更」を参照してください。

JDeveloperツールには、ページ階層の作成および変更用エディタ、ナビゲーション・モデル、カタログおよびカタログ・レジストリ、ページ・テンプレート、ページ・スタイル、スキン、委任管理などがあります。さらに、ブラウザベースのツールが提供され、これによりエンド・ユーザーと管理者はこれらの機能の一部を実行できます。第5.10.2項「ブラウザベースのWebCenter Portal管理コンソール」も参照してください。

5.3.2 ページ、ページ・テンプレートとスタイル、およびポータルのページ階層の理解

この項では、Oracle WebCenter Portal Frameworkアプリケーションの3つの関連項目である、ページ、ページ・テンプレートとページ・スタイル、およびページ階層について説明します。

ポータルは1ページ以上で構成されており、ページはポータルの構造や編成において重要な役割を果たします。通常、ページはタスク・フロー、ポートレット、コンテンツなどの1つ以上のエンティティのコンテナです。また一般に、ページにはナビゲーション・ツリー、タブ、ブレッドクラムなどのナビゲーション・インタフェースが含まれます。Portal Frameworkアプリケーションでは、oracle/webcenter/portalapp/pagesフォルダの下にあるポータル・プロジェクトに一連のデフォルト・ページが格納されています(図5-1を参照)。


注意:

Portal Frameworkアプリケーションのファイルの編成の詳細は、第5.4項「WebCenter Portal Frameworkアプリケーション・ファイルの編成」を参照してください。



注意:

ページ階層で使用されるページは、oracle/webcenter/portalappの下に配置する必要があります。


図5-1 pagesフォルダの内容

図5-1の説明が続きます
「図5-1 pagesフォルダの内容」の説明

ページ・テンプレートを使用すると、全ページにわたって共通にするビュー要素を指定できます。ページ・テンプレートとは、ADFレイアウト・コンポーネントやその他の要素を含むJSPXファイルのことです。一般に、ページ・テンプレートは、ヘッダー、フッターおよびコンテンツ領域によりページ・レイアウトを定義します。また、ページ・テンプレートでは、通常、ページのナビゲーションUIの配置とスタイルを指定します。たとえば、すべてのページに同じタブのセットを入れる場合や、各ページにツリー・ナビゲーション・パネルとブレッドクラムを表示する場合には、テンプレートにこれらのコンポーネントを追加できます。


ヒント:

ページ・テンプレートは、それを使用するページによって参照されます。基礎となるページ・テンプレートを変更すると、そのテンプレートを参照するすべてのページで自動的に変更内容が継承されます。


ページ・テンプレート・フォルダは、図5-2に示されているように、oracle/webcenter/portalapp/pagetemplatesにあります。このフォルダには、すぐに使用できるデフォルトのページ・テンプレートが2つ格納されています。

図5-2 pagetemplatesフォルダの内容

図5-2の説明が続きます
「図5-2 pagetemplatesフォルダの内容」の説明

ページ・スタイルは、実行時に作成するページに使用するJSPXページです。ページ・スタイルには、新規作成されたページのレイアウトが示され、ページでサポートされるコンテンツ・タイプも示される場合があります。

ユーザーがページ・スタイルを使用してページを作成する場合、レイアウトと初期コンテンツが、ページ・スタイルから新規作成されたページにコピーされます。ページ・テンプレートとは異なり、ページ・スタイルは参照ベースではありません。つまり、ページ・スタイルを変更しても、その変更は、スタイルを使用するページに継承されません。

ページ・スタイル・ファイルは、oracle/webcenter/portalapp/pageStylesフォルダ内に格納されています。

ページ階層とは、一連の親子関係によってページを配置する論理的な構造で、ここではどのページでも1ページ以上のサブページを含むことができます。この階層モデルはポータルの構造全体の定義に使用できるだけでなく、子ページにその親に指定されているセキュリティ・ポリシーを継承させることもできます。各階層にセキュリティ・ポリシーを伝播するページの機能は、ページごとにセキュリティを設定する必要がないため、数十ページまたは数百ページもの非常に大型のポータルには特に便利です。新しいページを作成すると、それがページ階層内で格納された場所に基づいて、そのセキュリティ・ポリシーが自動的に設定されます。

ページ階層ファイルは、図5-3に示されているように、oracle/webcenter/portalapp/pagehierarchyにあります。

図5-3 pagehierarchyフォルダの内容

図5-3の説明が続きます
「図5-3 pagehierarchyフォルダの内容」の説明


注意:

ページ階層ファイルは、ページ階層構造を定義するメタデータが含まれるXMLファイルです。これらのファイルを直接編集することはお薦めしません。次に説明するように、ページ階層エディタを使用して、ページ階層の作成や操作を行ってください。


基本的なページ階層モデルは、WebCenter Portal Frameworkアプリケーション・テンプレートで作成されたアプリケーションに含まれています。JDeveloperでページ階層エディタを使用してページ階層を変更できます。このエディタにアクセスするには:

  1. 図5-3に示すアプリケーション・ナビゲータで、ポータル・プロジェクトを開きます。

  2. pagehierarchyフォルダを右クリックします。

  3. メニューから「ページ階層の編集」を選択します。


ヒント:

ページ階層エディタは、ポータル・ページ・ファイル(JSPXファイル)を右クリックしてメニューから「ページ階層の編集」を選択するか、ページ階層ファイルを直接開いても起動できます。


ポータルにページを作成した後、エディタを使用してサイト構造を作成します。アプリケーション・ナビゲータのoracle/webcenter/portalappフォルダ内の任意の場所からページ階層エディタにページをドラッグ・アンド・ドロップして(一度に1ページまたは数ページ)、希望する階層に配置できます。

または、階層ペインの上に配置された「追加」ボタンを使用できます。このボタンをクリックすると、プロジェクト内からページを選択できるダイアログがポップアップ表示されます。このページは、図5-4に示されているように、現在エディタで選択されているページの子として追加されます。

図5-4 ページのページ階層への追加

図5-4の説明が続きます
「図5-4 ページのページ階層への追加」の説明

エディタでは、ツリー表示内のページ・ノードをドラッグ・アンド・ドロップで簡単に再配置できます。階層が大きい場合には、階層内のページを右クリックして「親ページの変更」を選択し、「親ページの変更」ダイアログを使用すると便利です。このダイアログを使用すると、選択済ページの新しい親を個々のウィンドウから選択でき、大きすぎて一度に表示できない階層内をスクロールする必要がなくなります。


ヒント:

ページ階層エディタのノードを右クリックし、「ページに移動」を選択して関連付けられているJSPX(ポータル・ページ)ファイルを開きます。



注意:

ページ階層内に作成する新しい各レベルには、pagehierarchy/pages/*Pages.xmlファイルが作成されます。これらのファイルには、そのレベル内のページ参照が記載されています。詳細は、第74.6.2項「ページ階層の構築」を参照してください。


図5-5に、最上位レベルのページ、「Benefits」(福利厚生)、「Careers」(キャリア)、「Payroll」(給与)および「Location」(場所)を含む単純な人事管理サイトの構造を示します。「Benefits」、「Careers」および「Location」の各ページには、複数の子ページがあります。

図5-5 ページ階層エディタ

図5-5の説明が続きます
「図5-5 ページ階層エディタ」の説明

ポータルを実行すると、この階層は図5-6に示すように表示されます。この例では、ナビゲーション・バーが表示されるデフォルトのページ・テンプレートが使用されています。このバーは、ページでタブのようなリンクとしてレンダリングされます。このナビゲーションUIは、ページ・テンプレートに追加されたため、そのテンプレートを使用するすべてのページに同様に表示されるようになります。デフォルトのナビゲーション・コンポーネント以外に、ナビゲーション・ツリー、ブレッドクラム、ページ・テンプレートへのナビゲーションUIのその他のスタイルなどを追加できます。多くの場合、テンプレートには2つ以上のナビゲーション・コンポーネントが含まれます。

ページ・テンプレートの詳細は、第5.6項「ポータルのルック・アンド・フィールの開発」を参照してください。デフォルトのナビゲーション・モデルおよびナビゲーション・モデルとユーザー・インタフェースの作成の詳細は、第10章「ナビゲーション・モデルの開発」を参照してください。

図5-6 ポータル・ナビゲーション・バー

図5-6の説明が続きます
「図5-6 ポータル・ナビゲーション・バー」の説明

ページ階層の詳細は、第74.6.2項「ページ階層の構築」を参照してください。

5.3.3 WebCenter Portal Frameworkページの保護

設計時に、ページ階層エディタでポータルのページにセキュリティを設定できます。前述のとおり、ページ階層ではページ間(親子)の構造的関係が定義されているため、子ページがその親のセキュリティ・ポリシーを継承できます。


注意:

ADFページ・セキュリティ・モデルまたは階層構造のWebCenter Portalページ・セキュリティ・モデルで、ページを保護できます。ページのページ階層への追加は、ページが階層セキュリティ・モデルにより保護されることを意味します。第74.6項「ページ階層セキュリティ・エディタの使用」も参照してください。


図5-7に示すように、ページ階層エディタにはページに対するロールベースのセキュリティ・ポリシーを指定できる「セキュリティ」セクションがあります。このセキュリティ・インタフェースによって、ポリシーを継承するか委任するかを決定できます。継承を指定すると、そのページのセキュリティ・ポリシーがその親ページから継承されます。セキュリティを委任すると、そのポリシーが親のセキュリティより優先され、セキュリティを継承しているすべての子ページにそのポリシーが伝播されます。


ヒント:

小さな南京錠のアイコンが横に表示されているページは、継承されたセキュリティの設定が上書きされます。つまり、委任されたセキュリティが指定されているページを示す際にこのアイコンが表示されます。


たとえば、図5-7では、管理者はページへの完全なアクセス権を持つ一方で、認証されたユーザーはページの表示とパーソナライズのみが可能となるよう、「Payroll」ページが構成されています。匿名ユーザーは、このページにはまったくアクセスできません。第5.3.4項「ナビゲーション・モデルおよびナビゲーション・レジストリの理解」で、ページへのセキュリティ・ポリシーの設定方法に応じて、ナビゲーションUIの表示も影響を受けることについて説明します。この例では、「Payroll」ページを使用できるのが管理者と認証されたユーザーのみであるため、ナビゲーションUIは認証されたユーザーと管理者にのみ「Payroll」ページへのリンクを表示します。その他のすべてのユーザーには、「Payroll」リンクは表示されません。

図5-7 「Payroll」ページのセキュリティ設定

図5-7の説明が続きます
「図5-7 「Payroll」ページのセキュリティ設定」の説明

5.3.4 ナビゲーション・モデルおよびナビゲーション・レジストリの理解

ナビゲーション・モデルとページ階層を区別することは重要です。最初に、ページ階層では、ページ間の親子関係を指定します。以前に説明したように、ページは1つ以上の子ページを保有できます。次に、ページ階層では、階層を縦断して親ページから子ページ(サブ・ページ)に継承されるセキュリティ・ポリシーを考慮します。ページ階層のみがページ間の関係を指定することに注意してください。タスク・フロー、ポートレットおよび外部リンクなどの他のリソースをページ階層に含めることはできません。

ページ階層では、管理者が大量のページを備えたポータルのセキュリティを容易に制御できるセキュリティ継承モデルが提供されます。たとえば、100ページのポータルの場合、ページ階層のルートにセキュリティ・ポリシーを指定すると、100ページすべてがそのポリシーを継承します。次に、ルートの下のページの設定を変更する場合、変更した設定がそのページのすべてのサブページに伝播します。また、継承された設定を無視して、階層の任意の場所にある個々のページにセキュリティ設定を適用することもできます。

それに対して、ナビゲーション・モデルはナビゲーションの構造を定義し、ナビゲーション・データを記録し、アプリケーションのビュー・レイヤーにそのデータを提供します。ページ階層はページのみで構成されているのに対して、ナビゲーション・モデルはタスク・フロー、ページ、外部リンクなどの多様なリソースで構成できます。

ここで重要なのは、ナビゲーション・モデルが制御する要素(ページ、リンク、タスク・フローなど)に適用されるセキュリティ・ポリシーをナビゲーション・モデルが認識している点です。認証されたユーザーに特定のページを表示する権限がない場合、デフォルトでは、ナビゲーション・モデルはそのページへのナビゲーション・リンクをすべて非表示にします。ポータルで定義されたセキュリティを備えていないリソース(外部リンクなど)には、開発者が手動で表示を制御する必要があります。それを実行する1つの方法として、リソースの表示を制御する(表示/非表示)際に、ページまたはページ・テンプレートにEL式を追加する方法があります。詳細は、第10章「ナビゲーション・モデルの開発」を参照してください。

たとえば、ポータル・ページにナビゲーションUIが含まれる場合、そのUIはナビゲーション・モデルに、ユーザーがどのページまたはその他の要素にナビゲートできるか、ポータルの現在のナビゲーション状態は何かなどについて問い合せます。最初の質問では、UIが表示できるリンクを通知します。2番目の問合せでは、そのリンクの表示方法をUIに通知します。ナビゲーション・ビューがツリーの場合、モデルはUIに現在選択されているページなどを通知します。これにより、ツリーUIは、開いているフォルダ、選択されたページなどとして、そのページを正確に表すノードを表示できます。

JDeveloperでは、ナビゲーション・エディタを使用してナビゲーション・モデルを変更します。エディタを開くには、図5-8に示すように、navigationsフォルダでdefault-navigation-model.xmlファイルをダブルクリックします。

図5-8 navigationsフォルダのコンテンツ

図5-8の説明が続きます
「図5-8 navigationsフォルダのコンテンツ」の説明

navigation-registry.xmlファイルは、ユーザーがナビゲーション・モデルを作成または編集する際にリソース・マネージャで使用します。レジストリは、作成または変更するモデルに含められるすべてのアイテムのスーパーセットを定義します。1つのアプリケーションに対して複数のナビゲーション・モデルを作成できますが、1つのアプリケーションが持つことのできるナビゲーション・レジストリ・ファイルは1つのみです。ナビゲーション・モデル、ナビゲーション・エディタおよびレジストリの詳細は、第10章「ナビゲーション・モデルの開発」を参照してください。

図5-9に示すように、デフォルトのナビゲーション・モデルには、「ページ階層」というノードが含まれています。デフォルトでは、このノードはpagehierarchyフォルダ内のデフォルトのページ階層ファイルpages.xmlを指します。このノードはナビゲーション・モデルにページ階層構造を参照するように指示し、ナビゲーションUIがレンダリングされるようにその構造をナビゲーションUIに伝えます。前述の図5-6に示されているように、デフォルトUIはページ階層をタブのようなリンクで表示します。このモデルが提供する情報により、各リンクにマウス・ポインタを置くとドロップダウン・メニューにサブページのリンクが表示されます。

図5-9 デフォルトのナビゲーション・モデル

図5-9の説明が続きます
「図5-9 デフォルトのナビゲーション・モデル」の説明

ナビゲーション・モデルには数種類のナビゲーション要素を含めることができます。これまでの説明のとおり、モデルにはページ階層と単独ページの両方を含めることができます。また、外部Webページや特定のコンテンツへのリンクなど、その他の要素へのナビゲーションも作成できます。

図5-10 ナビゲーション・モデルへのリンクの追加

図5-10の説明が続きます
「図5-10 ナビゲーション・モデルへのリンクの追加」の説明

詳細は、第10章「ナビゲーション・モデルの開発」を参照してください。

5.3.5 リソース・カタログおよびカタログ・レジストリの理解

カタログでは、レイアウト・コンポーネント、タスク・フロー、ポートレット、ドキュメントなど、権限のあるユーザーが実行時に追加できる関連性のない他の要素グループの集まりを指定します。Oracle WebCenter Portalのコンポーザは、実行時にカタログを使用して、権限のあるユーザーがポータル・ページに追加できる要素を判別します。

Portal Frameworkアプリケーション・テンプレートには、デフォルトのリソース・カタログ(default-catalog.xml)およびカタログ・レジストリ・ファイル(catalog-registry.xml)が含まれています。これらのファイルは、oracle/webcenter/portalapp/catalogsにあります。

ユーザーが実行時にコンポーザを使用してページを編集すると、デフォルトのカタログ・ファイルは、ページに追加できるすべてのアイテムを指定します。カタログ・レジストリ・ファイルは、ユーザーがリソース・カタログを作成または編集する際にリソース・マネージャで使用します。レジストリは、作成または変更するカタログに含められるすべてのアイテムのスーパーセットを定義します。

1つのアプリケーションに対して複数のカタログを作成できますが、1つのアプリケーションが持つことのできるカタログ・レジストリ・ファイルは1つのみです。詳細は、第14章「リソース・カタログの開発」を参照してください。

開発時に、リソース・カタログ・エディタを使用して既存のカタログを編集できます。このエディタを開くには、図5-11に示すように、アプリケーション・ナビゲータのcatalogsフォルダ内にあるカタログ・ファイル(default-catalog.xmlなど)を開きます。

新規カタログを作成するには、「ファイル」メニューから「新規」を選択します。「新規ギャラリ」ダイアログで、「すべてのテクノロジ」タブを選択し、さらに「Web層」ノードの下の「ポータル・フレームワーク」を選択します。次に、「リソース・カタログ」を選択して「OK」をクリックします。「アプリケーション・リソース・カタログの作成」ダイアログを使用して、新規カタログを作成します。


ヒント:

リソース・カタログ・エディタを使用して、ナビゲーション・レジストリを編集することも可能です。


図5-11 catalogsフォルダの内容

図5-11の説明が続きます
「図5-11 catalogsフォルダの内容」の説明

図5-12にリソース・カタログ・エディタを示します。

図5-12 JDeveloperのリソース・カタログ・エディタ

図5-12の説明が続きます
「図5-12 JDeveloperのリソース・カタログ・エディタ」の説明

図5-13に実行時管理ツールのリソース・カタログ・エディタを示します。

図5-13 実行時のリソース・カタログ・エディタ

図5-13の説明が続きます
「図5-13 実行時のリソース・カタログ・エディタ」の説明

たとえば、複数の部署のそれぞれに個別のカタログを作成できます。


ヒント:

個々のカタログ・エントリはユーザーのロールに基づいて表示/非表示にできます。


5.4 WebCenter Portal Frameworkアプリケーション・ファイルの編成

Portal Frameworkアプリケーション・ウィザードを実行すると、大量のプロジェクト・アーティファクトが構成され、プロジェクト・ディレクトリにインストールされます。JDeveloperは、アプリケーション・ナビゲータでプロジェクトの合理化されたビューを提供します。ポータル・プロジェクトは、ファイルシステムで直接確認することもできます。

5.4.1 WebCenter Portal Frameworkアプリケーションの編成の理解

この項では、Portal Frameworkアプリケーションの編成方法とその理由について説明します。

5.4.1.1 WebCenter Portal Frameworkアプリケーションの編成方法

JDeveloperで新しいPortal Frameworkアプリケーションを作成すると、自動的に大量のファイルがプロジェクトに配置されます。JDeveloperの「アプリケーション・ナビゲータ」ビューに、編成されたこれらのファイルが表示されます。

アプリケーション・ナビゲータを見て最初に気付くのは、Frameworkアプリケーションが2つのプロジェクトで構成されている点です。1つ目は、(デフォルトで)Portalと呼ばれます(図5-14)。この名前は、アプリケーションの作成時やその後いつでも変更できます。プロジェクト内のファイルは、ほとんどが<application_root>/<project_root>/public_html/oracle/webcenter/portalappディレクトリにあります。

2つ目のプロジェクトはPortalWebAssetsと呼ばれます。このプロジェクトには、HTMLファイルやイメージ・ファイルのような静的アプリケーション・リソースが含まれます。静的リソースを個々のプロジェクトに分離することによって、これらのリソースを専用サーバーにデプロイすることが可能となります。詳細は、第6.4項「PortalWebAssetsプロジェクトの理解」を参照してください。

図5-14 アプリケーション・ナビゲータのWebCenter Portal Frameworkアプリケーション

図5-14の説明が続きます
「図5-14 アプリケーション・ナビゲータのWebCenter Portal Frameworkアプリケーション」の説明

5.4.1.2 WebCenter Portal Frameworkアプリケーションがこのように編成される理由

アプリケーション内に保存されているファイル間における次の違いを理解することは重要です。


注意:

XMLファイルなどの一部のファイルはpublic_htmlで見つけることはないため、このような区別を把握しておくことが重要です。(標準Webアプリケーションでは、このディレクトリ下のほとんどのファイルは、アプリケーションをデプロイするとすぐに、ブラウザから直接URLでアクセスできるためです。)開発者は、ポータル・ファイルでこの特定の構造が必要になることに注意する必要があります。他の場所でポータル・アーティファクトを作成しないでください。


  • <application_root>/<project_root>/public_html/oracle/webcenter/portalappディレクトリに格納されたファイルの特徴は次のとおりです。

    • メタデータ・サービス(MDS)リポジトリにデプロイされます。

    • ポータル・リソースとして登録でき、実行時にリソース・マネージャで管理できます。

    • 通常、WebCenterの権限を使用して保護されます(ポータル・リソースの場合)。

  • <application_root>/<project_root>/public_htmlの他の場所に格納されたファイルの特徴は次のとおりです。

    • アプリケーションWARファイルにデプロイされます。

    • ポータル・リソースとして登録できないため、リソース・マネージャで管理できません。

    • アーティファクトのネイティブの権限クラスで保護されます。

Portal Frameworkアプリケーションがこのように構造化されているため、自分のページを作成する際に十分な情報を得た上で決定できるということを理解することが重要です。場合によっては、特にJSPXページを使用して、oracle/webcenter/portalappでページを作成しないことがあります。それは、アプリケーションでのページの使用目的に応じて変わります。

5.4.2 ファイルシステムでのポータル・プロジェクトの表示

プロジェクト・ファイルをファイル・システムに配置する最も簡単な方法は、アプリケーション・ナビゲータでファイルまたはフォルダを選択し、「編集」メニューから「パスのコピー」を選択します。この機能では、ファイルやフォルダへのパスがクリップボードに配置されるので、それをコマンド・シェルやファイル・ブラウザに貼り付けられます。

図5-15にサンプルPortal Frameworkアプリケーションのファイルシステムの編成を示します。プロジェクトのファイルの多くは、public_htmlフォルダの下に編成されます。

図5-15 ファイルシステム上のWebCenter Portal Frameworkアプリケーションの例

図5-15の説明が続きます
「図5-15 ファイルシステム上のWebCenter Portal Frameworkアプリケーションの例」の説明

見てわかるように、JDeveloperでは多少異なる、より合理化されたビューが提供されます。詳細は、次の第5.4.3項「JDeveloperでのポータル・プロジェクトの表示」を参照してください。

5.4.3 JDeveloperでのポータル・プロジェクトの表示

JDeveloperのプロジェクト・ビューでは、開発者が使用しそうなプロジェクト・ファイルが表示されます。これらのファイルには、ページ、ページ階層、ナビゲーション・モデル、ページ・テンプレート、カタログ、XML構成ファイル、Javaソース・ファイル、イメージなどがあります。

JDeveloperでは、ポータル・プロジェクトは図5-16に示すように、「アプリケーション・ソース」および「Webコンテンツ」の2つのフォルダに編成されます。

図5-16 JDeveloperでのポータル・プロジェクトの編成

図5-16の説明が続きます
「図5-16 JDeveloperでのポータル・プロジェクトの編成」の説明

「アプリケーション・ソース」フォルダは、主に、ソース・コードおよびページ定義ファイルのリポジトリです。アプリケーションに対して記述するJavaクラスの他に、「アプリケーション・ソース」に含まれる内容は次のとおりです。

  • oracle.webcenter.portalapp: ページ、ページ・テンプレート、ページ・カタログ、ナビゲーションのXML定義ファイルが格納されています。ページ定義ファイルは、ADFバインディング、ページ・パラメータおよび権限の設定を指定します。たとえば、ページ定義ファイルはページの親および子ページがある場合、それらを指定します。また、ページで許可されている操作などの、セキュリティ・ポリシー情報も指定します。デフォルトのページ定義ファイルは、ポータルのページをページ階層に追加すると、自動的に作成されます。

  • portal: リソース・バンドル、ソース・コードおよびその他のJavaアーティファクトが含まれます。

  • META-INF: データ・バインディングとページ・テンプレート・メタデータを指定するファイルが格納されています。

「Webコンテンツ」フォルダには、ページ、ページ階層、ナビゲーション・モデルなどWebプロジェクトを構成するすべてのファイルが格納されています。これらは、Portal Frameworkアプリケーションを開発する際に積極的に作成および変更できるファイルです。

図5-17は、「Webコンテンツ」フォルダの基本的な構造を示しています。作成および変更するファイルの多くは、oracle/webcenter/portalappサブ・フォルダに格納されています。フォルダの内容(カタログ、ナビゲーション、ページ階層、ページ、スキンおよびページテンプレート)により、ポータルの基本的なコンポーネントが構成されます。これらのポータル・コンポーネントの詳細は、第5.4.1項「WebCenter Portal Frameworkアプリケーションの編成の理解」を参照してください。

図5-17「Webコンテンツ」フォルダ

図5-17の説明が続きます
「図5-17「Webコンテンツ」フォルダ」の説明


ヒント:

アプリケーション・ナビゲータでローカルのファイル・システムの階層を表示するには、「プロジェクト」パネルの「ナビゲータの表示オプション」アイコンをクリックして「ディレクトリでグループ化」を選択します。


PortalWebAssetsプロジェクトには、HTMLやイメージ・ファイルのような静的アプリケーション・リソースが含まれます。静的リソースを個々のプロジェクトに分離することによって、これらのリソースを専用サーバーにデプロイすることが可能となります。詳細は、第6.4項「PortalWebAssetsプロジェクトの理解」を参照してください。

5.4.4 アプリケーション・ナビゲータでの非表示ファイルの表示

デフォルトでは、複数のファイルがアプリケーション・ナビゲータのビューから除外されています。これらのファイルが除外されているのは、ファイルを編集する必要がほとんどないためです。ただし、そのようなファイル編集を行うユース・ケースがいくつかあるため、ファイルをJDeveloper UIに追加しなおせるようにしておく必要があります。

除外されたファイルを配置するには:

  1. プロジェクト・フォルダを右クリックし、メニューから「プロジェクト・プロパティ」を選択します。

  2. 「プロジェクト・プロパティ」ダイアログで、「プロジェクトのソース・パス」ノードの「Webアプリケーション」を選択します。

  3. 図5-18に示すように、「除外」タブを選択します。

    図5-18 「除外」タブ

    図5-18の説明が続きます
    「図5-18 「除外」タブ」の説明

  4. 除外リストから要素を選択し、「削除」をクリックして除外リストから削除します。これで、目的の要素がアプリケーション・ナビゲータの該当するフォルダに自動的に追加されます。

例では、navigation-renderer.jspxファイルを使用して、ページ・テンプレートに即してリソースをレンダリングします。外部URLをページ内で表示する方法を変更する場合、まず除外リストからnavigation-renderer.jspxを削除すると、アプリケーション・ナビゲータのpagesフォルダの下にこれが表示されるようになります。次に、そのページを開き、必要に応じて編集します。

5.5 ポータルのライフ・サイクルについて

ポータルのライフ・サイクルとは、開発からステージング、テストを経て本番サーバーまでのポータルを作成する過程のことです。このライフ・サイクルには、ソフトウェア開発者、コンテンツ・モデラー、コンテンツ・コントリビュータ、IT管理者、ポータル・サイト管理者などの多くの人々が関与します。ポータル・ライフ・サイクルの全ステージの管理の詳細は、第8章「WebCenter Portal Frameworkアプリケーションのライフ・サイクルの理解」を参照してください。

5.6 ポータルのルック・アンド・フィールの開発

バナー、ナビゲーション、フッターなどコンテンツ領域周りの特定の表示要素を追加して、ルック・アンド・フィールを設計できます。ポータル構造に適したルック・アンド・フィールを決めると、その設定をページ・テンプレートとして保存して、ポータル作成時に使用できます。さらに、同じ設定をポータル内のページ全体で使用できます。ページ・テンプレートとページ・スタイルを使用すると、ポータル内のページがある程度統一できます。第11章「ページ・テンプレートの開発」を参照してください。

ポータルのカスタム・スキンも開発できます。スキンはCSS 3.0構文に基づくスタイルシートで、アプリケーション全体用に1箇所で指定されます。アプリケーションの各コンポーネントに対してスタイルシートを用意したり、各ページにスタイルシートを挿入するのではなく、アプリケーション全体に対して1つのスキンを作成できます。各コンポーネントで自動的に、スキンで記述されているスタイルが使用されます。スキンを使用すると、外観を変更するために、設計時にポータル・ページを変更する必要がなくなります。第13章「スキンの開発」を参照してください。

基本的なルック・アンド・フィールの設計は設計時にJDeveloperで作成できますが、管理者や適切なアクセス権限を持つユーザーはリソース・マネージャを使用して、アプリケーションがデプロイされた後もポータルのルック・アンド・フィールの開発を続行できます。たとえば、リソース・マネージャを使用して、ページの追加と削除、ナビゲーション・ユーザー・インタフェースの追加、ページ・テンプレート、スキンおよびページ・スタイルの変更などを実行できます。これらおよびその他のリソース・マネージャ機能の詳細は、第15章「ページの作成とリソースの追加」を参照してください。

5.7 デフォルトのポータル・プリファレンスの変更

Portal Frameworkアプリケーションには、ポータルの特定のデフォルト・コンポーネントを指定する一連のプリファレンスが用意されています。この項では、そのプリファレンスとデフォルト値の変更方法について説明します。

5.7.1 デフォルトのポータル・プリファレンスについて

表5-1に、ポータルのプリファレンスとそのデフォルト構成ファイルを示します。

表5-1 デフォルト・プリファレンス

プリファレンス デフォルト設定

ナビゲーション・モデル

/oracle/webcenter/portalapp/navigations/default-navigation-model.xml

リソース・カタログ

/oracle/webcenter/portalapp/catalogs/default-catalog.xml

ページ・テンプレート

/oracle/webcenter/portalapp/pagetemplates/pageTemplate_globe.jspx

ナビゲーション・レンダラ

/oracle/webcenter/portalapp/pages/navigation-renderer.jspx

スキン

portal


5.7.2 JDeveloperでデフォルトのプリファレンスを変更する方法

JDeveloperでデフォルトのプリファレンスを変更するには、直接adf-config.xmlファイルを編集します。このファイルをJDeveloperで見つけるには、アプリケーション・ナビゲータの「アプリケーション・リソース」部分を開きます。次に、図5-19に示すように、「ディスクリプタ」フォルダおよびADF META-INFフォルダを開きます。

図5-19 JDeveloper内でのadf-config.xmlファイルの場所

図5-19の説明が続きます
「図5-19 JDeveloper内でのadf-config.xmlファイルの場所」の説明

たとえば、デフォルトのナビゲーション・モデル・ファイルを変更するには、このプリファレンスの値を編集します。

<portal:preference id="oracle.webcenter.portalapp.navigation.model"
   desc="Default Navigation Model"
   value="/oracle/webcenter/portalapp/navigations/default-navigation-model.xml"
   resourceType="navigation" display="true"
/>

プリファレンスは、実行時にも、「管理」ページの「構成」タブで変更できます。このページから、ランタイム・アプリケーションのデフォルトのページ・テンプレート、スキン、リソース・カタログおよびナビゲーション・コンポーネントを構成できます。詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理Portal Frameworkアプリケーションのデフォルトの構成に関する項を参照してください。

5.8 反復およびラウンドトリップ開発手法の使用方法

反復開発とは、開発プロセスを促進できる生産性の機能のことです。反復開発では、統合WebLogic ServerでPortal Frameworkアプリケーションを実行しながら、JDeveloperでこのアプリケーションに変更を加えて保存し、ブラウザの現在のページをリフレッシュするだけで、その変更の効果を確認できます。Frameworkアプリケーションでは、反復開発機能はデフォルトで有効になっています。Portal Frameworkアプリケーションでの反復開発機能の有効化については、第2.3.1項「Portal Frameworkアプリケーションでの反復開発の準備」を参照してください。第8.7項「反復開発の理解」も参照してください。

ラウンドトリップ開発とは、メンテナンスや拡張のため、デプロイされた実行時ポータルからJDeveloperにリソースを戻すことができる機能および技法です。JDeveloperでリソースを編集した後、リソース・マネージャを使用して、デプロイされたポータルにリソースをアップロードし直すことができます。WebCenter Portalのラウンドトリップ開発機能は、アプリケーション全体を再度デプロイすることなくポータル・リソースを変更する、簡単で便利な方法を提供します。

5.9 ポータルの実行およびテスト

JDeveloperには、JDeveloperにおいてテスト目的で統合WebLogic ServerのPortal Frameworkアプリケーションを実行する方法がいくつか用意されています。

5.10 実行時のWebCenter Portal Frameworkアプリケーション

Oracle WebCenter Portal Frameworkには、多くの興味深い実行時機能が用意されています。実行時機能とは、ブラウザからアクセスできる機能のことです。

5.10.1 統合WebLogic Serverでの実行時カスタマイズの保持

統合WebLogic Serverを開発環境(JDeveloperを介してポータルを実行)で使用する場合、デフォルトでは実行時(リソース・マネージャを使用)のポータルに対する変更は再デプロイメントの際に破棄されます。たとえば、リソース・マネージャを使用してページに対する資格の追加、レイアウトの変更、ナビゲーション・モデルの変更などを実行した場合、その変更はアプリケーションを次に再デプロイしたときに保持されません。リソース・マネージャの詳細は、第15章「ページの作成とリソースの追加」を参照してください。


注意:

この項の情報は、開発環境で統合WebLogic Serverとともに実行するポータルに対してのみ適用されます。ポータルを本番環境にデプロイする際には、実行時の変更が破棄されることはありません。



注意:

JDeveloper環境で作業する開発者の便宜を考慮して、カスタマイズはデフォルトでは保持されません。実行時にファイルを変更すると、新しいバージョンのファイルがMDS書込みディレクトリに書き込まれます。すると、この新規バージョンが、JDeveloper内で最優先バージョンとなります。その時点で、JDeveloperで設定を変更し、ブラウザをリフレッシュしても、変更は表示されません。したがって、JDeveloperで作業する際には、実行時のカスタマイズを保持しない方が便利で自然です。


デフォルトの動作を変更し、実行の間に実行時のカスタマイズを保持することは可能です。たとえば、特定のテスト用シナリオを有効にする際に、そのようにできます。アプリケーションのデプロイメント(実行)間にカスタマイズを保持できるようにするには:

  1. 「アプリケーション」メニューから、「アプリケーション・プロパティ」を選択します。

  2. 「アプリケーション・プロパティ」ダイアログで、「実行」ノードの下の「MDS」を選択します。

  3. 「ディレクトリ・コンテンツ」で、「アプリケーションの実行間でカスタマイズを維持」を選択し、デフォルト(各実行前にカスタマイズが破棄される)を無効にします。図5-22を参照してください。

    図5-22 「アプリケーションの実行間でカスタマイズを維持」の選択

    図5-22の説明が続きます
    「図5-22 「アプリケーションの実行間でカスタマイズを維持」の選択」の説明

5.10.2 ブラウザベースのWebCenter Portal管理コンソール

WebCenter Portal Frameworkアプリケーションには、リソース、サービス、セキュリティおよびポータルの構成について作業できるWebCenter Portal管理コンソールが含まれています。WebCenter Portal管理コンソールは、URL (http://<server>:<port>/<context_root>/admin)にあり、図5-23に示されています。

図5-23 WebCenter Portal管理コンソール

図5-23の説明が続きます
「図5-23 WebCenter Portal管理コンソール」の説明


ヒント:

WebCenter Portal管理コンソールのデフォルトのURLを変更するには、web.xmlファイル内の<servlet-mapping>要素の<url-pattern>属性を編集します。デフォルトの<url-pattern>adminですが、必要に応じて別のものに変更できます。


「リソース」タブ(リソース・マネージャ)の詳細は、第5.10.4項「ブラウザベースのツールを使用したポータル・リソースの編集」および第15章「ページの作成とリソースの追加」を参照してください。セキュリティの詳細は、第74章「WebCenter Portal Frameworkアプリケーションの保護」を参照してください。

5.10.3 セキュリティ設定の実行時ポータルへの影響

ロール・ベースのセキュリティ・ポリシーは、ビジターが表示および操作(作成、削除、更新など)できるページ、リソースおよびナビゲーション要素を制御します。設計時(JDeveloper)ページ・エディタでは、第5.3.3項「WebCenter Portal Frameworkページの保護」で説明するように、ページまたはページ階層でこれらのポリシーを設定できます。Oracle WebCenter Portal Frameworkでは、次の方法でこれらのセキュリティ・ポリシーを順守します。

  • ページ(およびタスク・フローなどその他の特定のリソース)は、表示する権限を持つユーザーのみに表示されます。同じ原理が、権限付与、作成、削除、更新、パーソナライズなど、ユーザーがページ上で実行できる操作に対して保持されます。

  • リソース(ページ、タスク・フローなど)へのナビゲーションは、認証ユーザーがそのページを使用できない場合、非表示になります。たとえば、「Payroll」ページへのアクセスが許可されていないユーザーの場合、そのページへのリンクはすべてのナビゲーション・ユーザー・インタフェースで表示されません。

  • リソース・カタログ内で使用できるリソースは、セキュリティ・ポリシーに応じて調整されます。タスク・フローなどの特定のリソースに対するアクセス権を持たないユーザーの場合、そのリソースはリソース・カタログに表示されません。

5.10.4 ブラウザベースのツールを使用したポータル・リソースの編集

WebCenter Portal管理コンソールには、次のようなポータル固有の機能を実行時に使用可能にする「リソース」タブが表示されます。

  • ページ

  • ページ・テンプレート

  • ナビゲーション・モデル

  • リソース・カタログ

  • スキン

  • ページ・スタイル

  • コンテンツ・プレゼンタ表示テンプレート

  • マッシュアップ・スタイル

  • データ・コントロール

  • タスク・フロー

ポータル・ユーザーは、リソース・マネージャを使用して、リソースまたはアプリケーション全体を実行時環境からダウンロードし、JDeveloperで編集して、デプロイ済アプリケーションにアップロードして戻すこともできます。

リソース・マネージャの「ソースの編集」機能により、ランタイム・アプリケーションでリソースのソース・コードを編集できます。たとえば、ポータル・リソース(ページ・テンプレートなど)をアップロードすると、リソース・マネージャで直接それを編集できます。それには、リソースを選択して「編集」メニューから「ソースの編集」を選択します。図5-24に示すように、ソース編集ウィンドウが表示されます。


注意:

default-navigation-modelなどの一部のリソースは編集できません。これらのリソースを編集するには、まずコピーし、そのコピーを編集します。


図5-24 実行時のページ・テンプレート・ソース・ファイルの編集

図5-24の説明が続きます
「図5-24 実行時のページ・テンプレート・ソース・ファイルの編集」の説明

5.11 デフォルトのホーム・ページおよびログイン/ログアウト・ターゲット・ページの変更

oracle/portalapp/pages/home.jspxファイルは、新しいPortal Frameworkアプリケーションのデフォルトのホーム・ページです。この項では、デフォルトのホーム・ページを別のページ、またはURL、ポートレット、タスク・フローなどのナビゲート可能なリソースに変更する方法を説明します。

5.11.1 ホーム・ページの指定方法の理解

デフォルトのPortal Frameworkアプリケーションには、index.htmlファイルがあり、これはポータル・プロジェクト・ディレクトリに格納されています。この索引ファイルには、次のリダイレクト文が記述されています。

<meta http-equiv="refresh" content="0;url=./faces/wcnav_defaultSelection" />

注意:

index.htmlのリダイレクト文は、期待するページではなく、ポータル・ナビゲーション・モデルを参照します。リダイレクトがナビゲーション・モデルを指しているため、currentSelection属性が適切に設定され、現在の選択項目がユーザー・インタフェースで強調表示されます。


URL要素pages_homeは、ページ階層で指定された"home"ページを参照します。(一意のIDとなるように、接頭辞"pages_"をフォルダ名に追加します。)図5-25に示すように、「ナビゲーション」ダイアログで「フォルダの内容の挿入」チェック・ボックスが選択されています。「フォルダの内容の挿入」オプションにより、指定されたフォルダ(この場合、"home")がフォルダの内容に置換されます。したがって、この例では、ポータルはページ階層内の"home"というフォルダを検索します。また、ページ階層はナビゲーション・モデルでは要素として指定されます。

デフォルトのポータル・ホーム・ページの指定方法を理解できるよう、ナビゲーション・モデルではデフォルトでpagesというデフォルト・ノードが作成されます。このノードのナビゲーション・パスは、図5-25に示すように、ページ階層ファイルのpages.xmlを指しています。

図5-25 デフォルトのナビゲーション・モデル

図5-25の説明が続きます
「図5-25 デフォルトのナビゲーション・モデル」の説明

pages.xmlへのナビゲートの際、homeというノードが検索されます。そのノードのパスは、図5-26に示すように、/oracle/webcenter/portalapp/pages/home.jspxです。

図5-26 デフォルトのページ階層

図5-26の説明が続きます
「図5-26 デフォルトのページ階層」の説明

5.11.2 デフォルトのホーム・ページの変更方法

デフォルトのホーム・ページを変更するには、index.htmlのリダイレクト文をナビゲーション・モデルで参照される別のリソースのプリティURLに変更します。たとえば、新しいホーム・ページを作成してそれを共通のユース・ケースにリダイレクトするとします。新しいホーム・ページを自分のホーム・ページに指定するには、index.htmlのリダイレクトを新しいページのプリティURLに変更します。(ページのリンク要素を作成するには、ナビゲーション・モデルで新しいページをドラッグします。)たとえば、ナビゲーション・モデルのリンクIDがTheHomePageの場合には、次のようにします。

<meta http-equiv="refresh" content="0;url=./faces/wcnav_defaultSelection" />

ここで、.faces/wcnav_defaultSelectionはプリティURLであり、これはナビゲーション・モデルで定義したリンク要素を指します。

図5-27 新しいホーム・ページ要素によるナビゲーション・モデル

図5-27の説明が続きます
「図5-27 新しいホーム・ページ要素によるナビゲーション・モデル」の説明

この例では、ブラウザでのポータルへのアクセスは次のURLを使用します。

 http://myserver:myport/MyPortalApp-Portal-context-root

図5-28に示すように、このポータルでは新しいホーム・ページからのコンテンツが記載されたホーム・ページがレンダリングされています。

図5-28 ポータル・ホーム・ページのコンテンツとして表示されたOracle Webサイト

図5-28の説明が続きます
「図5-28 ポータル・ホーム・ページのコンテンツとして表示されたOracle Webサイト」の説明

5.11.3 デフォルトの索引ページの指定方法

統合Weblogic Serverのインスタンスのデフォルト索引ページは、index.htmlです。新しいポータル・プロジェクトには、Web Contentフォルダにデフォルトでこのファイルが含まれています。

デフォルト索引ファイルのindex.htmlを別のファイルに変更する場合、2つの選択肢があります。このデフォルト索引ファイルを変更する1つの方法では、次のようにweb.xmlファイルの<welcome-file-list>要素を編集します。

<welcome-file-list>
    <welcome-file>/index.html</welcome-file>
</welcome-file-list>

あるいは、「実行構成の編集」の「デフォルト」ダイアログ・ボックスを使用してデフォルトの索引ページを変更する方法もあります。このダイアログにアクセスするには、プロジェクトのプロパティ・ダイアログを開き、「実行/デバッグ/プロファイル」オプションを選択します。「編集」をクリックして、図5-29に示すように、デフォルトの索引ページを変更できる、「実行構成の編集」の「デフォルト」ダイアログを表示します。

図5-29 「実行構成"Default"の編集」ダイアログ

図5-29の説明が続きます
「図5-29 「実行構成"Default"の編集」ダイアログ」の説明

5.11.4 ログインまたはログアウト後のターゲット・ページの指定

ログインまたはログアウト後にターゲット・ページを指定するには、例5-1に示すように、ポータル・プロジェクトのWebContent/WEB-INF/faces-config.xml構成ファイルで<navigation-rule>要素を編集します。ターゲット・ページを別のナビゲーション・リソースのプリティURLまたはFacesページに変更できます。

例5-1 ログインおよびログアウトに対するターゲット・ページの指定

<navigation-rule>
    <from-view-id>*</from-view-id>
    <navigation-case>
      <from-outcome>login_success</from-outcome>
      <to-view-id>/pages_home</to-view-id>
      <redirect/>
    </navigation-case>
    <navigation-case>
      <from-outcome>logout_success</from-outcome>
      <to-view-id>/pages_home</to-view-id>
      <redirect/>
    </navigation-case>
</navigation-rule>

たとえば、ログアウト後のページにユーザーをリダイレクトするには、次の手順に従います。

  1. ログアウト後のページを作成して、それにコンテンツを追加します。例:

    /oracle/webcenter/portalapp/pages/postlogout.jspx
    
  2. faces-config.xmlのナビゲーション・ルールを変更します。例:

    <navigation-case>
      <from-outcome>logout_success</from-outcome>
      <to-view-id>/oracle/webcenter/portalapp/pages/postlogout.jspx</to-view-id>
      <redirect/>
    </navigation-case>
    

正常なログアウト後に、ユーザーは指定されたページにリダイレクトされます。

5.12 基本的なポータル開発タスク

この項では、Portal Frameworkアプリケーションの開発に関係する基本的なタスクの一部を示します。