Oracle® Fusion Middleware Oracle WebCenter Portal開発者ガイド 11g リリース1 (11.1.1.7.0) B72084-02 |
|
前 |
次 |
この章では、WebCenter Portal: Frameworkアプリケーションでナビゲーション・モデルを作成する方法を説明します。ナビゲーション・モデルは、ポータル・ナビゲーションのコンテンツ、構造およびメタデータを定義します。
この章には次の項が含まれます:
ポータルでのナビゲーション・モデルの公開方法の詳細は、第13章「ポータル・ナビゲーションの視覚化」を参照してください。
通常、ポータルでは様々なソースからの情報が提供されます。情報源は、ページ、ポートレット、タスク・フロー、コンテンツ・リポジトリ、外部ページなどです。ユーザーには、簡単にこの情報内を移動して、必要な特定の情報に素早くアクセスできる方法が必要です。ポータル・ナビゲーションにより、そのような情報へのアクセスを提供します。
ナビゲーション・モデルは、ナビゲーションのコンテンツ、構造およびメタデータを定義します。ナビゲーション・モデルを作成する場合、追加するアイテムとそれらのアイテムの階層を指定します。ナビゲーション・モデルには、次のリソースを含めることができます。
ページ(個々のページとページの階層)
コンテンツ(個々のコンテンツ・アイテムまたはコンテンツ問合せの結果)
他のナビゲーション・モデル
ポートレット
タスク・フロー
外部アプリケーション
外部リンク
詳細は、第10.3項「ナビゲーション・モデルへのリソースの追加」を参照してください。
動的に生成されるリソースを追加することもできます。これらは次のとおりです。
カスタム・リソース
コンポーネント
カスタム・フォルダ
カスタム・コンテンツ
詳細は、第10.3.7項「ナビゲーション・モデル・データを拡張する方法」を参照してください。
新しいFrameworkアプリケーションを作成すると、ナビゲーション・モデルが作成されます(default-navigation-model.xml
)。このシード済ナビゲーション・モデル上にアプリケーションを構築するか、または独自のものを作成できます。異なるユーザー・タイプに対する別々のナビゲーション・モデルの作成が必要になる場合もあります。
注意: 独自のナビゲーション・モデルを作成する場合、シード済ナビゲーション・モデルを拡張しないで、デフォルトのナビゲーション・モデルとして設定することをお薦めします。詳細は、第10.4項「デフォルトのナビゲーション・モデルの選択」を参照してください。 |
ナビゲーション・モデルを作成すると、組み込まれたナビゲーション・タスク・フローか独自のナビゲーションUIを介してポータル内のページ・テンプレートにそれを公開できます。詳細は、第13章「ポータル・ナビゲーションの視覚化」を参照してください。
最初から提供されているデフォルトのナビゲーション・モデルが要件に合ない場合には、独自のナビゲーション・モデルを作成できます。
ナビゲーション・モデルを作成するには:
アプリケーション・ナビゲータで、ナビゲーション・モデルを作成するノード(たとえば、/oracle/webcenter/portalapp/navigations
)を右クリックし、「新規」を選択します。
「新規ギャラリ」で、「Web層」を開き、「ポータル」、「ナビゲーション」の順に選択し、「OK」をクリックします。
「ナビゲーションの作成」ダイアログ(図10-1)の「ファイル名」フィールドに、ナビゲーションを表すXMLファイルの名前(myNavigation.xml
など)を入力します。
「ディレクトリ」フィールドに、ファイルを作成する場所のフル・ディレクトリ・パスを入力します。
注意: Frameworkアプリケーションにおいて、実行時リソース・マネージャで新規ナビゲーション・モデルを公開するには、ナビゲーション・モデルを |
「ポータル・リソースとして作成」を選択し、ナビゲーション・モデルをリソース・レジストリに追加して、実行時にリソース・マネージャで管理できるようにします。
注意: このオプションが使用できるのは、ナビゲーション・モデルを格納したディレクトリが |
ヒント: このオプションをこの時点で選択しなくても、リソース・モデルを後からリソース・レジストリに追加できます。その場合は、リソース・モデルを右クリックして「ポータル・リソースの作成」を選択します。 |
「OK」をクリックします。
新規ナビゲーション・モデルが「デザイン」ビュー(図10-2)で開きます。
ナビゲーション・モデルの「デザイン」ビューの「ナビゲーション」列で新規ナビゲーション・モデルを選択し、必要に応じて一般プロパティを定義します。
「ナビゲーション・フィルタ」フィールドに、特定の基準に基づいたナビゲーション・モデル内で選択済リソースを除外する際に使用するJavaクラスの名前を入力します。このJavaクラスは、oracle.adf.rc.spi.plugin.catalog.CatalogDefinitionFilter
インタフェースを実装します。
リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーション・モデルがページにレンダリングされてもそのリソースは表示されません。
注意: また、リソースの「表示可能」フィールドにEL式を指定すると、目的のモデルの個別リソースを条件に基づいて非表示にすることも可能です。 |
「表示可能」フィールドで、ナビゲーション・モデルをアプリケーションで使用可能にするかどうかを指定します。このフィールドは、EL値を取ります。デフォルト値は#{true}
で、その場合、ナビゲーション・モデルが他のユーザーによって使用可能で、ナビゲーション・モデルのドロップダウン・リストで有効になります。
「ナビゲーション属性」セクションを使用して、必要に応じてナビゲーション・モデルの表示オプションを設定します。使用可能なオプションは、個々のリソースのオプションと同じです。別の表示オプションの詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
ナビゲーション・モデル定義ファイルを保存します。
ナビゲーションが作成されたので、それにリソースを追加できます。詳細は、第10.3項「ナビゲーション・モデルへのリソースの追加」を参照してください。
ナビゲーション・モデルのコンテンツを定義すると、デフォルトのナビゲーション・モデル(default-navigation-model.xml
)にリソースを追加できます。デフォルトのナビゲーション・モデルは、WebCenter PortalのFrameworkアプリケーション・テンプレートを使用してアプリケーションを作成する際に自動的に作成されます。
独自のカスタム・ナビゲーション・モデルを作成して、リソースに追加することも可能です。詳細は、第10.2項「ナビゲーション・モデルの作成」を参照してください。
リソースをナビゲーション・モデルに追加するには、次の2つの方法があります。
リソースを、JDeveloperの別の領域から「デザイン」ビューのナビゲーション・モデルにドラッグ・アンド・ドロップします。
ナビゲーション・モデルの「デザイン」ビューで、「新しいノードを追加します」メニューのオプションを使用します(図10-3)。
ナビゲーション・モデルの「デザイン」ビューで、既存のリソースの変更および削除もできます。
この項には次のサブセクションが含まれます:
ナビゲーション・モデルの「デザイン」ビュー内の必要な場所にドラッグ・アンド・ドロップすることにより、次のリソースをナビゲーション・モデルに追加できます。
コンテンツ - 「アプリケーション・リソース」ペインまたは「リソース・パレット」のContent Server接続からコンテンツ・アイテムをナビゲーション・モデルにドラッグできます。
ページ - アプリケーション・ナビゲータからナビゲーション・モデルにページをドラッグする際に、目的のページ自体のみを追加するか、そのページに属するサブページに含まれるページ問合せを追加するかを選択するよう要求されます。
ポートレット - 「アプリケーション・リソース」ペインまたは「リソース・パレット」からポートレットをナビゲーション・モデルにドラッグできます。
タスク・フロー - 「アプリケーション・リソース」ペインまたは「リソース・パレット」からタスク・フローをナビゲーション・モデルにドラッグできます。
外部アプリケーション - 「アプリケーション・リソース」ペインまたは「リソース・パレット」から外部アプリケーションをナビゲーション・モデルにドラッグできます。
URL - 「アプリケーション・リソース」ペインまたは「リソース・パレット」からURL接続をナビゲーション・モデルにドラッグできます。
ナビゲーション・モデル - ナビゲーション・モデルをアプリケーション・ナビゲータからドラッグし、それを別のナビゲーション・モデルに埋め込みます。
ナビゲーション・モデルには、既存のコンテンツ・リポジトリ接続内の個々のコンテンツ・アイテムへのリンクを追加したり、すべてのコンテンツにアクセスできるフォルダを追加できます。
特定の問合せ基準に適合する一連のドキュメントをナビゲーション・モデルに含めることもできます。詳細は、第10.3.3項「問合せ結果に基づいたコンテンツをナビゲーション・モデルに追加する方法」を参照してください。
コンテンツ・アイテムを追加するには:
ヒント: コンテンツ・アイテムをナビゲーション・モデルに追加するには、それをナビゲーション・モデルの「デザイン」ビューにドラッグ・アンド・ドロップすることもできます。 |
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」をクリックして、「コンテンツ・アイテム」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「URL」フィールドで、リソースにアクセスするURLを入力するか、これを参照します。手動でURLを入力する場合には、次の形式を使用してください。
content://
Content_Connection_Id
/
Document_Id
注意: 次の条件に当てはまる場合、実行時にリソースを使用可能にするには、(「アプリケーション・リソース」ペインで)適切な接続をアプリケーションに追加する必要があります。
|
指定したページ・テンプレートを使用して、現在のページにリソースをレンダリングするには、「ページ・テンプレートでのURLのレンダリング」を選択します。
ナビゲーションでリソースが選択されると、現在のページがそのリソースで上書きされるようにするには、「URLにリダイレクト」を選択します。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーション・モデルがページにレンダリングされてもそのリソースは表示されません。 |
「URL属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
コンテンツ・プレゼンタ表示テンプレートを使用してコンテンツ・アイテムを表示する場合、「URLパラメータ」セクションで「追加」アイコンをクリックして「templateView」を選択します。
templateViewパラメータの「値」フィールドに、次のようなコンテンツ・アイテムのレンダリングに使用する表示テンプレート・ビューIDを入力します。
oracle.webcenter.content.templates.default.detail
注意: コンテンツ・プレゼンタの表示テンプレートを使用してWikiページをFrameworkアプリケーションで表示すると、デフォルトでそのWikiページ内のリンクがドキュメント・ビューアで表示されます。コンテンツ・プレゼンタを使用してWikiページのリンクを表示する場合、 |
必要に応じてさらにパラメータを追加します。その他のコンテンツ・プレゼンタ・パラメータについては、第30.7.1項「コンテンツ・プレゼンタ・タスク・フローのパラメータと即時利用可能な表示テンプレート」を参照してください。
ナビゲーション・モデル定義ファイルを保存します。
ナビゲーション・モデルにコンテンツ問合せを追加して、特定の検索基準に一致するすべてのドキュメントを含めることができます。
注意: 単一のファイルまたは特定フォルダ内の全ファイルをナビゲーション・モデルに追加するには、第10.3.4項「ページ、ポートレット、タスク・フロー、外部アプリケーションまたはWebページをナビゲーション・モデルに追加する方法」を参照してください。 |
コンテンツ問合せを追加するには:
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「コンテンツ問合せ」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「リポジトリ」フィールドで、検索するコンテンツのコンテンツ・リポジトリを入力するか参照します。
注意: 次の条件に当てはまる場合、実行時にリソースを使用可能にするには、(「アプリケーション・リソース」ペインで)適切な接続をアプリケーションに追加する必要があります。
|
「問合せ」フィールドに、ナビゲーション・モデルに含めるコンテンツを特定する問合せ基準を入力します。例:
select * from cmis:document WHERE cmis:name LIKE 'Foo%'
問合せのフォーマット方法と例の詳細は、『Oracle Fusion Middleware Content Management REST Service開発者ガイド』を参照してください。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「フォルダの内容の挿入」を選択し、問合せの結果をフォルダの下に表示するのではなく、ナビゲーションに直接表示します。
「コンテンツ問合せ属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
コンテンツ・プレゼンタ表示テンプレートを使用してコンテンツ問合せの結果を表示する場合、「URLパラメータ」セクションで「追加」アイコンをクリックして「templateView」を選択します。
templateViewパラメータの「値」フィールドに、次のようなコンテンツ問合せ結果のレンダリングに使用する表示テンプレート・ビューIDを入力します。
oracle.webcenter.content.templates.default.list.simple
注意: コンテンツ・プレゼンタ表示テンプレートを使用してWikiページを表示すると、デフォルトでそのWikiページ内のリンクがドキュメント・ビューアで表示されます。コンテンツ・プレゼンタを使用してWikiページのリンクを表示する場合、 |
必要に応じてさらにパラメータを追加します。その他のコンテンツ・プレゼンタ・パラメータについては、第30.7.1項「コンテンツ・プレゼンタ・タスク・フローのパラメータと即時利用可能な表示テンプレート」を参照してください。
注意: ナビゲーション・モデルに同じポートレットへのリンクを2度含める(最初のリンクはパラメータ値を指定し、2番目は指定しない)場合、最初のリンクに設定したパラメータが保持され、2番目のリンクにも使用されます。パラメータが2番目のリンクに使用されないようにするには、そのパラメータ値を明示的にNULLに設定する必要があります。 |
ナビゲーション・モデル定義ファイルを保存します。
次のタイプのリソースへのリンクをナビゲーション・モデルに追加できます。
外部リンク: 任意の外部WebページへのHypertextリンク
注意: 「外部リンク」オプションを使用して |
外部アプリケーション: 任意の登録済の外部アプリケーションへのリンク。
ページ: アプリケーション内の任意のJSPXページへのリンク。
このオプションにより、単一ページへのリンクをナビゲーション・モデルに追加できます。ページ階層全体を含める方法については、第10.3.5項「ページ階層をナビゲーション・モデルに追加する方法」を参照してください。
タスク・フロー: アプリケーション内の任意のタスク・フロー、またはWebCenter Portalタスク・フロー(リソース・パレットで使用可)へのリンク。
注意: この方法でナビゲーションを直接タスク・フローに指定すると、ユーザーはタスク・フローをカスタマイズできません。ユーザーがタスク・フローをカスタマイズできるようにするには、タスク・フローをページに追加し、そのページをナビゲーション・モデルに追加します。 |
ポートレット: 任意の登録済のポートレット・プロデューサのポートレットへのリンク。
注意: この方法でナビゲーションを直接ポートレットに指定すると、ユーザーはポートレットをカスタマイズできません。ユーザーがポートレットをカスタマイズできるようにするには、ポートレットをページに追加し、そのページをナビゲーション・モデルに追加します。 |
その他: カスタム・リソースへのリンク。詳細は、第10.3.7.1項「リンクをカスタム・リソースに追加する方法」を参照してください。
リンクをページ、ポートレット、タスク・フロー、外部アプリケーションまたはWebページに追加するには:
ヒント: ポートレット、タスク・フロー、外部アプリケーションまたはWebページをナビゲーション・モデルに追加するには、それをナビゲーション・モデルの「デザイン」ビューにドラッグ・アンド・ドロップすることもできます。 リンクを単一ページに追加するには、そのページをナビゲーション・モデルの「デザイン」ビューにドラッグして、ポップアップ・メニューから「ページ・リンク」を選択します。 |
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「リンク」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「タイプ」ドロップダウン・リストから、ナビゲーション・モデルに追加するリソースのタイプ(「外部リンク」、「外部アプリケーション」、「ページ」、「タスクフロー」、「ポートレット」)を選択します。
「ファクトリ・クラス」フィールドには、リソース・タイプの適切なファクトリ・クラスが自動的に移入され、編集できません。
注意: 「その他」のタイプのリソースを追加すると、「ファクトリ・クラス」フィールドが編集可能になり、リソースのファクトリ・クラスを入力する必要があります。詳細は、第10.3.7.1項「リンクをカスタム・リソースに追加する方法」を参照してください。 |
「URL」フィールドで、リソースにアクセスするURLを入力するか、これを参照します。表10-1に、様々なリソース・タイプに使用するURL形式を示します。
表10-1 様々なリソース・タイプのURLの形式
リソース・タイプ | アプリケーション内での場所 | URL形式 |
---|---|---|
外部リンク |
なし |
Webページへの絶対パスまたは相対パス 注意: 「外部リンク」オプションを使用して |
外部アプリケーション |
「アプリケーション・リソース」ペイン内の外部アプリケーション接続 |
extapp://External_Application_Id
|
ページ |
アプリケーション・ナビゲータ |
page://Path_to_Page/Page_Name 例: page://oracle/webcenter/portalapp/pages/myPage.jspx |
ADFライブラリからのタスク・フロー |
リソース・パレット |
taskflow://Path_to_TaskFlow/TaskFlow_Definition_File_Name#TaskFlow_Id |
アプリケーション内のタスク・フロー |
アプリケーション・ナビゲータ |
taskflow://Path_to_TaskFlow/TaskFlow_Definition_File_Name#TaskFlow_Id |
ポートレット |
「アプリケーション・リソース」ペインまたは「リソース・パレット」内のポートレット・プロデューサ接続 |
portlet://Producer_Id/Portlet_Id |
注意: 次の条件に当てはまる場合、実行時にリソースを使用可能にするには、(「アプリケーション・リソース」ペインで)適切な接続をアプリケーションに追加する必要があります。
|
指定したページ・テンプレートを使用して、現在のページにリソースをレンダリングするには、「ページ・テンプレートでのURLのレンダリング」を選択します。
ナビゲーションでリソースが選択されると、現在のページがそのリソースで上書きされるようにするには、「URLにリダイレクト」を選択します。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーション・モデルがページにレンダリングされてもそのリソースは表示されません。 |
「URL属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
「URLパラメータ」セクションで、必要に応じて、選択したリソースでサポートしているパラメータの値を入力します。
ナビゲーション・モデル定義ファイルを保存します。
ページの階層をナビゲーション・モデルに追加できます。階層内の選択済ページの下にあるすべてのページが、ナビゲーション・モデルに含まれます。
アプリケーション内に単一のページ階層しかない場合でも、ナビゲーション・モデルではアプリケーションのページ階層内のすべてのノードを開始点として使用できます。
注意: ナビゲーション・モデルに単一ページを含めるのみの場合は、「リンク」ナビゲーション・タイプを使用してください。詳細は、第10.3.4項「ページ、ポートレット、タスク・フロー、外部アプリケーションまたはWebページをナビゲーション・モデルに追加する方法」を参照してください。 |
ページ階層を追加するには:
ヒント: ページ階層のセクションをナビゲーション・モデルに追加するには、ページ(すでにページ階層に追加してある)をアプリケーション・ナビゲータからナビゲーション・モデルの「デザイン」ビューにドラッグ・アンド・ドロップします。表示されるポップアップ・メニューから「ページ問合せ」を選択します。 |
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「ページ問合せ」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「スコープ」フィールドはFrameworkアプリケーションに適用できないため(有効範囲は常に現在のアプリケーション)、このフィールドは空白のままにします。
有効範囲は、特定のページがページ問合せのルートとして指定されていない場合に、WebCenter Portal: Spacesでホーム・スペースまたは特定のスペース内のすべてのページを表示するかどうかを決定します。
「パス」フィールドに、ページ問合せの開始点として使用するページ階層内のページに対応したXMLファイルのパスとファイル名を入力します。例:
/oracle/webcenter/portalapp/pagehierarchy/pages/pages.xml /oracle/webcenter/portalapp/pagehierarchy/pages/productsPages.xml
「ページ・テンプレート」ドロップダウン・リストから、ナビゲーションでリソースが選択されている場合にそのリソースを表示するために使用するページ・テンプレートを選択します。
「ページ・スタイル」ドロップダウン・リストから、ナビゲーション・モデルに含めるページのスタイルを選択します。たとえば、「Wiki」を選択した場合、「Wiki」ページ・スタイルを使用するページのみがナビゲーションに含められます。
「ページ可視性」ドロップダウン・リストから、階層で非表示としてフラグが付けられている場合でもページを含めるかどうかを選択します。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「フォルダの内容の挿入」を選択し、階層のサブページを親ページのフォルダの下に表示するのではなく、ナビゲーションに直接表示します。
「ページ問合せ属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
「ページ問合せパラメータ」セクションで、必要に応じて、ページ・テンプレートでサポートされている任意のパラメータの値を入力します。
ナビゲーション・モデル定義ファイルを保存します。
ナビゲーション・モデルを相互にネストできます。たとえば、複雑なナビゲーション・モデルの場合、複数の個別のモデルに分割し、すべてを1つの包括的なナビゲーション・モデル内にネストしたほうが容易な場合もあります。ネストしたナビゲーション・モデルを使用して、ナビゲーション・モデルの開発を別々のユーザーに委任したり、ナビゲーションの別々の部分へのアクセスを制御したりできます。
ナビゲーション・モデルに別のナビゲーション・モデルを埋め込むには:
ヒント: ナビゲーション・モデルに別のナビゲーション・モデルを埋め込むには、埋め込むナビゲーション・モデルをアプリケーション・ナビゲータからナビゲーション・モデルの「デザイン」ビューにドラッグ・アンド・ドロップします。 |
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「ナビゲーション」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「パス」フィールドで、次のように、埋め込むナビゲーション・モデルのナビゲーション・モデル定義ファイルの場所とファイル名を入力するか参照します。
/oracle/webcenter/portalapp/navigations/myNavigation2.xml
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「ナビゲーション属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
ナビゲーション・モデル定義ファイルを保存します。
ナビゲーション・モデルに既知のリソースを追加するだけでなく、実行時に動的に生成されるモデルにリソースを追加することも可能です。
この項には次のサブセクションが含まれます:
ページ、ポートレット、タスク・フローなどWebCenter Portal対応でサポートされる様々なリソースへのリンクを追加するには、適切な「タイプ」のリンクを追加してそのリソースのURLを指定します。詳細は、第10.3.4項「ページ、ポートレット、タスク・フロー、外部アプリケーションまたはWebページをナビゲーション・モデルに追加する方法」を参照してください。
サード・パーティのリソースにリンクする場合は、タイプ「その他」のリンクを追加し、サード・パーティのURLResourceFactory
実装クラスを指定します。
リンクをカスタム・リソースに追加するには:
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「リンク」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「タイプ」ドロップダウン・リストから、「その他」を選択します。
「ファクトリ・クラス」フィールドで、カスタム・リソースのURLを解決できるURLResourceFactory
実装クラスを入力するか参照します。
「URL」フィールドに、リソースにアクセスするためのURLを入力します。
指定したページ・テンプレートを使用して、現在のページにリソースをレンダリングするには、「ページ・テンプレートでのURLのレンダリング」を選択します。
ナビゲーションでリソースが選択されると、現在のページがそのリソースで上書きされるようにするには、「URLにリダイレクト」を選択します。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「URL属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
「URLパラメータ」セクションで、必要に応じて、選択したリソースでサポートしているパラメータの値を入力します。
ナビゲーション・モデル定義ファイルを保存します。
カスタム・コンポーネントをナビゲーション・モデルに追加できます。単一のADF Facesコンポーネント、2つ以上のコンポーネントを含む複合オブジェクト、内部に任意のHTMLコンテンツを追加できるJSF Verbatimタグなど、様々なコンポーネントを追加できます。カタログに追加可能な任意のHTMLの例は、YouTubeビデオです。
カスタム・コンポーネントを追加するには:
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「コンポーネント」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「コンポーネント・ファクトリ」フィールドに、oracle.adf.rc.component.XmlComponentFactory
など、oracle.adf.rc.component.ComponentFactory
インタフェースを実装し、一連のパラメータに基づいてコンポーネントのインスタンスを作成するJavaクラスを入力または参照します。
名前を入力すると、クラスパスから有効なファクトリ・クラスがフィールドに自動的に入力されます。
詳細は、第C.4項「カタログへの動的リソースの追加に使用可能なファクトリ・クラス」を参照してください。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「コンポーネント属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
「コンポーネント・パラメータ」セクションに、コンポーネントを定義するパラメータを追加します。
たとえば、XMLコンポーネントを追加する場合、「パラメータ」セクションで「追加」アイコンをクリックし、「xml」を選択します。表示される新しい行で、「値」フィールドにコンポーネントのXMLコードを指定します。
注意: 「xml」パラメータは、 |
コンポーネントを正しく機能させるには、次の例のように、カスタム・コンポーネントIDが#
になるように指定し、ネームスペースを指定する必要があります。
<cust:panelCustomizable id="#" xmlns:cust="http://xmlns.oracle.com/adf/faces/customizable"/>
#
という値により、コンポーネントに対し、動的に一意のIDが生成されます。
ナビゲーション・モデル定義ファイルを保存します。
実行時にコンテンツを動的に表示するように構成されるカスタム・フォルダをナビゲーション・モデルに追加できます。カスタム・フォルダはリソースを含むフォルダとして追加されません。つまり、リソースを動的に表示する、ファクトリ・クラスへのリファレンスのみが含まれます。
カスタム・フォルダを追加するには:
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「カスタム・フォルダ」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「パス」フィールドに、カスタム・フォルダのMDSパスを入力します。
「初期コンテキスト・ファクトリ」フィールドで、javax.naming.spi.InitialContextFactory
インタフェースを実装して一連のパラメータに基づいてフォルダを生成するJavaクラスを入力または参照します。
詳細は、第C.4項「カタログへの動的リソースの追加に使用可能なファクトリ・クラス」を参照してください。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「フォルダの内容の挿入」を選択し、カスタム・フォルダの内容をフォルダの下に表示するのではなく、ナビゲーションに直接表示します。
「カスタム・フォルダ属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
「カスタム・フォルダ・パラメータ」セクションで、ファクトリ・クラスを実装する際に定義したパラメータを追加します。これらのパラメータは、アプリケーションのその他のアーティファクトにバインドできます。
ナビゲーション・モデル定義ファイルを保存します。
カスタム・コンテンツ・プロバイダは、実行時に0以上のナビゲーション・アイテムを動的に生成します。これはカスタム・フォルダに非常に似ていますが、カスタム・フォルダでは、実行時にナビゲーション・モデルがレンダリングされると、空の場合でも必ずフォルダが表示される点が異なっています。カスタム・コンテンツ・プロバイダを使用すると、フォルダ内にコンテンツが存在する場合にのみ、実行時にフォルダが表示されます。
カスタム・コンテンツ・プロバイダを追加するには:
アプリケーション・ナビゲータで、リソースを追加するナビゲーション・モデルを右クリックし、「開く」をクリックします。
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、リソースを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「カスタム・コンテンツ」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「コンテンツ・プロバイダ」フィールドで、oracle.adf.rc.spi.plugin.catalog.CustomContentProviderV2
インタフェースを実装するJavaクラスを入力または参照します。
詳細は、第C.4項「カタログへの動的リソースの追加に使用可能なファクトリ・クラス」を参照してください。
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
注意: リソースはセキュリティに基づいて自動的にフィルタ処理されます。ユーザーが特定のリソースへのアクセス権を持たない場合には、ナビゲーションがページにレンダリングされてもそのリソースは表示されません。 |
「カスタム・コンテンツ属性」セクションで、リソースに目的の表示オプションを指定します。詳細は、第10.3.9項「リソースの表示オプションの設定方法」を参照してください。
注意: 通常、カスタム・コンテンツでは、属性を指定する必要がありません。コンテンツ・プロバイダで生成されたリソースの属性は、コンテンツ・プロバイダで指定されます。 |
「カスタム・コンテンツ・パラメータ」セクションで、フォルダ上のパラメータを定義します。ここで定義するパラメータは、CustomContentProviderV2
実装に渡され、この実装により解釈されます。
ナビゲーション・モデル定義ファイルを保存します。
フォルダをナビゲーション・モデルに追加して、リソースのサブセットを作成したり、類似したリソースをグループ化できます。また、セパレータを追加し、ナビゲーション・モデルをリソースのグループに分割することもできます。フォルダとセパレータにより、ページ内でレンダリングされる際にナビゲーション・モデルのアイテムを分類でき、アイテムの検索が簡単になります。
相互に関連してドラッグしたり、階層になるよう別のアイテム内でドラッグして、ナビゲーション・モデル内のアイテムを再配置できます。
リソースを編成するには:
アプリケーション・ナビゲータで、編成するリソースが属するナビゲーション・モデルを右クリックし、「開く」を選択します。
フォルダまたはセパレータを追加するには:
ナビゲーション・モデルの「デザイン」ビューの左側の「ナビゲーション」列で、フォルダまたはセパレータを追加するナビゲーション・モデルのノードを選択します。
「新しいノードを追加します」アイコンをクリックして、「フォルダ」または「セパレータ」を選択します。
「ID」フィールドには自動的に生成されたIDが移入されます。このIDを保持することはできますが、もう少し説明的なIDに変更することもできます。IDはナビゲーション・モデル内で一意である必要があります。
リソースがナビゲーション・モデルの最上位にある場合、IDをwc_navtitle
またはwcnav_externalId
にすることはできません。これらのIDは予約されています。
ヒント: IDが一意ではないか、IDに無効な文字を入れた場合、フィールドの境界線が赤くなります。 |
「表示可能」フィールドで、リソースをナビゲーションに表示するかどうかを指定します。デフォルト値はEL式#{true}
です。これは、リソースが常にすべてのユーザーに表示されることを意味します。リソースがすべてのユーザーに対して常に非表示になるようにするにはfalse
または#{false}
を入力します。あるいは、リソースの表示条件を指定するEL式を入力します。フィールドが空の場合、値はデフォルトでtrue
になります。
リソースをナビゲーション・モデル内に移動するには、アイテムを選択して目的の場所にドラッグします。
1つのリソース(子アイテム)を別のリソース(親アイテム)の下にインデントさせるには、子アイテムを選択して親アイテムの最上位にドラッグします。
リソースの親を変更するには、右クリックして「親の変更」を選択します。
ナビゲーション・モデル定義ファイルを保存します。
様々なリソース用表示オプションを指定して、ナビゲーションがページ上でレンダリングされる際の外観と動作を決定できます。使用できる表示オプションは、リソースのタイプの応じて異なります。
リソースの表示オプションを設定するには:
アプリケーション・ナビゲータで、表示オプションを設定するリソースが属するナビゲーション・モデルを右クリックし、「開く」を選択します。
ナビゲーション・モデルの「デザイン」ビュー内の、左側にある「ナビゲーション」列でリソースを選択します。
「URL属性」パネルで、「追加」アイコンをクリックして設定する属性を選択します。表10-0に、使用可能な属性を示します。
表10-2 リソースの属性
「値タイプ」ドロップダウン・リストから、次のいずれかを選択します。
リテラル文字列 - 属性に対する値として文字列を指定します
リソース・バンドル - リソース・バンドルを使用して、属性のローカライズ値を指定します。
「表示値」フィールドに、属性の値を入力します。リソース・バンドルを使用している場合、「参照」アイコンをクリックしてローカライズ値を検索するリソース・バンドルを選択します。
ナビゲーション・モデル定義ファイルを保存します。
デフォルトのナビゲーション・モデルには、デフォルトでアプリケーションが使用する必要のあるナビゲーション・モデルを選択するのに便利な方法が用意されています。ページ・テンプレート・デザイナは、このデフォルトのナビゲーション・モデルを、実際の名前がわからなくても参照できます。たとえば、ナビゲーションEL式では、#{navigationContext.defaultNavigationModel}
のように、デフォルトのナビゲーション・モデルが参照されることが多くあります。
最初にFrameworkアプリケーションを作成すると、シードされたナビゲーション・モデル(default-navigation-model.xml
)がデフォルトのナビゲーション・モデルとして設定されます。続いて独自のナビゲーション・モデルを作成すると、使用するたびにこのナビゲーション・モデルを明示的に参照するのではなく、それをデフォルトとして設定できます。
アプリケーションにデフォルトのナビゲーション・モデルを設定するには、adf-config.xml
ファイルのoracle.webcenter.portalapp.navigation.model
プリファレンスを編集します。
デフォルトのナビゲーション・モデルを選択するには:
アプリケーション・ナビゲータの「アプリケーション・リソース」ペインで、adf-config.xmlファイルを右クリックして、「開く」を選択します。
ヒント:
|
「ソース」タブをクリックします。
次のid
を使用して、ADFプリファレンスを見つけます。
oracle.webcenter.portalapp.navigation.model
value
属性をポータルのデフォルトとして使用するナビゲーション・モデルのパスに設定します。
value="oracle/webcenter/portalapp/navigations/myNavigationModel.xml"
例10-1に、完全なプリファレンス要素の例を示します。
例10-1 デフォルトのナビゲーション・モデルのADFプリファレンス
<portal:adf-portal-config> <preferences> ... <preference id="oracle.webcenter.portalapp.navigation.model" desc="Default Navigation Model" value="oracle/webcenter/portalapp/navigations/myNavigationModel.xml" resourceType="navigation" display="true"/> ... </preferences> </portal:adf-portal-config>
adf-config.xml
ファイルを保存します。
ナビゲーション・レンダラは、次のようなページ以外のナビゲーション・リソースをレンダリングするJSPXページです。
ポートレット
コンテンツ
外部リンク
外部アプリケーション
タスク・フロー
これらのリソースのレンダリング方法を変更するには、ナビゲーション・レンダラ・ページを編集します。たとえば、ナビゲーション・レンダラ・タスク・フローの前または後にイメージを追加したり、フローからストレッチ・レイアウトに変更することができます。
ナビゲーション・レンダラ・ページはデフォルトでは非表示のため、編集できるようにするには、まずアプリケーションでこれを表示する必要があります。
注意: 非常に多くの場合、既存のナビゲーション・レンダラを編集して、各自の要件に適合できるようにする必要があります。しかし、必要な場合には独自のナビゲーション・レンダラ・ページを作成できます。たとえば、ナビゲーション・レンダラでは、 独自のナビゲーション・レンダラ・ページを作成することにした場合は、そのナビゲーション・レンダラ・タスク・フローを格納するナビゲーション・レンダラ・リージョンを含める必要があります。 アプリケーションのナビゲーション・レンダラとしてページを設定するには、ナビゲーション・レンダラADFプリファレンス( |
ナビゲーション・レンダラを編集するには:
アプリケーション・ナビゲータで、アプリケーション・プロジェクトを右クリックして「プロジェクト・プロパティ」を選択します。
「プロジェクトのソース・パス」ノードを開き、「Webアプリケーション」を選択します。
「除外」タブを選択します。
ナビゲーション・レンダラ・ファイル(navigation-renderer.jspx
)を選択して、「削除」をクリックし、除外ファイルのリストからそのファイルを削除します。
「OK」をクリックします。
ナビゲーション・レンダラJSPXファイルは、アプリケーション・ナビゲータで次のノードの下にリストされるようになります。
/oracle/webcenter/portalapp/pages/
navigation-renderer.jspxを右クリックして、「開く」を選択します。
「ソース」タブをクリックして、必要に応じてファイルを編集します。
終了したら、navigation-renderer.jspx
ファイルを保存します。
アプリケーションで部分ページ・リフレッシュ(PPR)が使用されていない場合、ユーザーがナビゲーション・モデルのリソースにナビゲートするたびに、ブラウザのURLが変更されます。しかし、ブラウザで表示されているURLは現在のページを示さず、最後に表示されたページのURLが表示されます。
ブラウザで現在のページのURLを表示できるようにするには、web.xml
ファイルでoracle.webcenter.navigationframework.REDIRECT_OPTIONS
コンテキスト・パラメータを設定します。
注意:
|
REDIRECT_OPTIONSコンテキスト・パラメータを設定するには:
アプリケーション・ナビゲータで、web.xmlファイルを右クリックし、「開く」を選択します。
概要エディタで、「コンテキスト初期化パラメータ」セクションを開きます。
「コンテキスト初期化パラメータの作成」アイコンをクリックします。
「名前」フィールドに、oracle.webcenter.navigationframework.REDIRECT_OPTIONS
と入力します。
「値」フィールドに、toPrettyURL
と入力します。
これにより、web.xml
ファイルに次のように追加されます。
<context-param> <param-name>oracle.webcenter.navigationframework.REDIRECT_OPTIONS</param-name> <param-value>toPrettyURL</param-value> </context-param>
web.xml
ファイルを保存します。
Frameworkアプリケーションのリソース・マネージャを使用すると、管理者権限のあるユーザーは、ナビゲーション・モデルなどポータル・リソースを実行時に作成および変更できるようになります。リソース・マネージャでナビゲーションを公開することによって、管理者は実行時にそのナビゲーションを管理できます。アプリケーションのデプロイ後にさらにナビゲーションを作成して公開する場合には、JDeveloperからランタイム・アプリケーションにそれらのナビゲーションを公開できます。
注意: 実行時にナビゲーション・モデルを作成した場合に、設計時環境にインポートして戻さないときは、新規ナビゲーション・モデルがアプリケーションの再デプロイ時に失われることがあります。詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal管理者ガイド』のリソース・カスタマイズの保存に関する項を参照してください。 |
リソース・マネージャでナビゲーションを公開するには、第16.2.1項「リソースをリソース・マネージャに追加する方法」を参照してください。
ナビゲーション・レジストリ・ファイル(navigation-registry.xml
)を編集して、実行時にユーザーがナビゲーション・モデルに追加できるリソースを正確に制御することもできます。
ナビゲーション・モデルの実行時の機能については、『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』の章ナビゲーションの使用に関する項を参照してください。
この項には次のサブセクションが含まれます:
ナビゲーション・レジストリは、ユーザーが実行時にナビゲーション・モデルに追加できるリソースを登録するための専用リソース・カタログです。各Frameworkアプリケーションには、アプリケーションの作成時に作成される1つのナビゲーション・レジストリ・ファイルnavigation-registry.xml
が含まれます。このファイルを編集して、含めるリソースを変更できます。たとえば、ユーザーが実行時に他のナビゲーション・モデルを埋め込むことができないようにする場合、ナビゲーション・リファレンス・リソースをナビゲーション・レジストリから削除できます。
ナビゲーション・レジストリを編集するには:
アプリケーション・ナビゲータで、navigation-registry.xml
ファイルを右クリックします。
ヒント: このファイルは、 |
このファイルをその他のリソース・カタログと同じ方法で編集します。詳細は、第15.2.3項「リソース・カタログのコンテンツの管理方法」を参照してください。
次のリソースをナビゲーション・レジストリに追加できます。
フォルダ
リンク
タスク・フロー
ポートレット
コンテンツ
その他
リソース・カタログ
コンポーネント
カスタム・フォルダ
カスタム・コンテンツ
ナビゲーション・レジストリの既存のリソースを変更および削除して、レジストリのリソースを再配置することもできます。
終了したら、navigation-registry.xml
ファイルを保存します。
シード済ナビゲーション・モデルをリソース・マネージャで変更または削除することはできません。管理権限のあるユーザーは、シード済ナビゲーション・モデルのコピーを作成してそれを編集または削除することも、独自のナビゲーション・モデルを作成することもできます。
ユーザーがナビゲーション・モデルを実行時に作成または編集する場合は、さらなる拡張のためにJDeveloperにナビゲーション・モデルを戻す必要があることがあります。これを実行するには、デプロイ済アプリケーションからナビゲーション・モデルをダウンロードし、JDeveloperで編集して、アプリケーションにアップロードして戻します。設計時、このタイプのラウンドトリップ開発には、ダウンロードしたナビゲーション・モデルのインポート、JDeveloperでの編集、およびデプロイ済アプリケーションにアップロードして戻すためのエクスポートが含まれます。
また、アプリケーションのデプロイ後に新規ナビゲーション・モデルを作成した場合、JDeveloperからそのナビゲーション・モデルをエクスポートして、それをデプロイ済アプリケーションにアップロードできます。
この項では、JDeveloperでナビゲーション・モデルをインポートおよびエクスポートする方法について説明します。次のサブセクションが含まれます:
ラウンドトリップ開発の詳細は、第16.4項「リソースのラウンドトリップ開発の有効化」を参照してください。
リソース・マネージャからナビゲーション・モデルをダウンロードすると、EARファイルが作成されます。JDeveloperにEARファイルをインポートする際には、EARファイルのファイルは、フォルダApplication_Root
/Portal/public_html/oracle/webcenter/siteresources/scopedMD/
scope_GUID
に抽出されます。設計時の他のナビゲーション・モデルと同じように、ナビゲーション・モデルを開いて編集できます。編集後に、更新済のナビゲーション・モデルをデプロイ済アプリケーションにエクスポートする必要があります。
リソースのインポートの詳細な手順は、第16.4.2項「ポータル・リソースをJDeveloperにインポートする方法」を参照してください。
すでにデプロイしたアプリケーションで新規ナビゲーション・モデルを公開します。
デプロイしたアプリケーションからインポートして変更したナビゲーション・モデルをコピーして戻します。
JDeveloperからナビゲーション・モデルをエクスポートすると、EARファイルが作成されます。管理者権限のあるユーザーは、この後、リソース・マネージャを使用してこのEARファイルをデプロイしたアプリケーションにアップロードできます。
リソースのエクスポートの詳細な手順は、第16.4.3項「ポータル・リソースをJDeveloperからエクスポートする方法」を参照してください。
WebCenter Portal: Spacesには、そのまま各自のスペースで使用できるシード済ナビゲーション・モデルが用意されています。これらのデフォルトのナビゲーション・モデルが要件に適さない場合には、WebCenter Portal: Spaces内で独自のナビゲーション・モデルを作成できます。詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のナビゲーションの使用に関する項を参照してください。
ただし、WebCenter Portal: Spacesでは、必要とするすべての機能を備えたナビゲーション・モデルを作成するためのコントロール機能がすべて提供されていない可能性があります。そのような場合、JDeveloperでは、もともとWebCenter Portal: Spacesで作成したナビゲーション・モデルを編集して、WebCenter Portal: Spacesにアップロードして戻すことが可能です。
WebCenter Portalには特別なJDeveloperワークスペース(DesignWebCenterSpaces.jws
)が用意されており、ナビゲーション・モデルなどのリソースを開発してWebCenter Portal: Spacesにアップロードする際に利用できます。第55章「JDeveloperを使用したSpacesアプリケーションの拡張」には、サンプルのワークスペースの場所、およびWebCenterSpacesResources
プロジェクトを使用してカスタムのナビゲーション・モデルやWebCenter Portal: Spacesのその他のタイプのリソースを作成する方法が記載されています。
JDeveloperでWebCenter Portal: Spacesナビゲーション・モデルを使用している場合、次の点を考慮してください。
WebCenter Portal: Spacesナビゲーション・モデルで必要なすべてのリソースは、WebCenter Portal: Spaces内に存在します。したがって、WebCenter Portal: Spacesナビゲーション・モデルを再構成して少し編集するには、JDeveloperのみを使用してください。最初に、WebCenter Portal: Spacesで可能なかぎりのナビゲーション・モデルを作成し、必要なリソースを追加する必要があります。その後、JDeveloperを使用してリソースの順番を調整し、すべての必要な属性とパラメータを設定できます。
JDeveloperを使用してWebCenter Portal: Spacesナビゲーション・モデルにリソースを追加する場合には、リソースの「情報」ダイアログにアクセスしてWebCenter Portal: SpacesからリソースIDを取得する必要があります。詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のリソースに関する情報の表示に関する項を参照してください。
リソースをWebCenter Portal: Spacesナビゲーション・モデルに追加する際には、リソースへのパスを手動で入力する必要があります。「参照」アイコンは使用できません。たとえば、ページへのリンクを入力するには、WebCenter Portal: SpacesでページのIDを識別し、次にpage://
pathToXmlFile
のように値を手動で入力する必要があります。