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

前
 
次
 

F 式言語式

この付録では、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションで使用できる式言語(EL)式について説明します。

内容は次のとおりです。


関連項目:

EL APIの詳細は、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスを参照してください。


F.1 式言語(EL)式の概要

ページ・コンポーネントまたはアセットを構成する場合、現在のアプリケーション・コンテキストを利用する変数として値を表すことができます。たとえば、現在のユーザーの名前、ユーザーに割り当てられたロール、現在のページの状態などを、変数を使用して取得できます。こうした柔軟性はEL式を使用することで実現できます。

この項には次のサブセクションが含まれます:

F.1.1 式ビルダーの概要

EL式は、属性と実行時に決まるオブジェクト値とのバインドに、Portal Frameworkアプリケーション全体で使用されます。特定のコンポーネントの値は、実行時にそのvalue属性によって決定されます。コンポーネントにはその値として静的テキストを割り当てることができますが、通常、value属性には、表示データを決定するために実行時インフラストラクチャにより評価されるEL式が含まれます。

JDeveloperの式ビルダーを使用してEL式を作成できます。ビルダーにはプロパティ・インスペクタからアクセスできます。プロパティ・インスペクタで変更する属性を特定し、「プロパティ・メニュー」アイコンをクリックして、ポップアップから「式ビルダー」を選択します(図F-1)。

図F-1 式ビルダーへのアクセス

図F-1の説明が続きます
「図F-1 式ビルダーへのアクセス」の説明

「式ビルダー」ダイアログ(図F-2)では、「式」ボックスにEL式を直接入力できます。「変数」ドロップダウン・リストを使用して、式に含める項目を選択することもできます。演算子ボタンを使用して、式に論理演算子または算術演算子を追加します。

式ビルダーの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Webユーザー・インタフェース開発者ガイド』の「ADF Facesのスタート・ガイド」の章を参照してください。

図F-2 「式ビルダー」ダイアログ

図F-2の説明が続きます
「図F-2 「式ビルダー」ダイアログ」の説明

F.1.2 WebCenter Portalの式エディタの概要

WebCenter Portalでは、式エディタと呼ばれる単純な式言語(EL)エディタを提供しています。式エディタは、動的な計算をしなければ不明なプロパティ値(たとえば、現在のユーザーや現在のページ・モードなどを指定する場合)を定式化する場合に使用します。

式エディタは、WebCenter Portalの管理および編集画面で使用できます。式エディタを開くには、フィールド、チェック・ボックスまたはドロップダウン・リストの横の「拡張編集オプション」アイコンをクリックして、「式ビルダー」をクリックします(図F-3)。

図F-3 「パラメータ値」フィールドの横の「拡張編集オプション」アイコンと表示されるエディタ

図F-3の説明が続きます
「図F-3 「パラメータ値」フィールドの横の「拡張編集オプション」アイコンと表示されるエディタ」の説明


関連項目:

コンポーネント・プロパティへのアクセスの詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のコンポーネントの変更に関する項を参照してください。


式エディタには、式の入力用に2つのオプションが用意されています。

  • 値の選択: シード済EL式を選択します。

  • 値または式の入力: 式を手動で入力します。

「値の選択」の下のオプションは、式から返される情報のタイプに基づいて分類されます。最初のメニューでカテゴリを選択し、2番目のメニューで返される値のタイプを選択します(図F-4)。

図F-4 式ビルダーの「値の選択」の下のオプション

図F-4の説明が続きます
「図F-4 式ビルダーの「値の選択」の下のオプション」の説明


関連項目:

シード済EL式の詳細は、第F.14.2項「式エディタのシード済の式」を参照してください。


「値または式の入力」オプションの下のテキスト・ボックスを使用して、目的の式を手動で入力できます(図F-5)。

図F-5 式エディタの「値または式の入力」の下のテキスト・ボックス

図F-5の説明が続きます
「図F-5 式エディタの「値または式の入力」の下のテキスト・ボックス」の説明

この付録にある表の式の多くは、結果として返されるオブジェクトを絞り込むための構成要素です。すなわち、必ずしも単独で使用することを意図したものではなく、ELを組み合せて必要な問合せを構築するために使用します。

たとえば、次の式は、3つのアセット関連ELを使用して、特定のポータル・テンプレートを返す問合せを1つ構築します。これは、親ポータルstoresからテンプレートstoresMasterTemplateを取得します。

#{srmContext.resourceScope['stores'].resourceType['siteTemplate'].displayName['storesMasterTemplate'].singleResult}

式エディタでは、次のいずれかを実行できます。

  • 「値の選択」を選択して、ドロップダウン・リストから事前定義された値を選択します。

  • 「値または式の入力」を入力して、値またはEL式を入力します。次の形式を使用します。

    • リテラル数値: #{123}

    • リテラル文字列: #{'string'}

    • リテラルブール値: #{true}

    • 値を戻すために呼び出されるJava Bean: #{generalSettings.preferredTimeStyle}

    エディタには「テスト」ボタンがあり、ELの入力を検証できます。「テスト」ボタンは、「値または式の入力」の下のテキスト・ボックスに入力した式に対して使用できます。

    検証では、EL構文がチェックされて式が評価されます。式の値は、それが実行されるコンテキストによって異なるため、エディタには実際の使用時に戻される値とは異なる結果値が表示される可能性があります。

    ただし、「テスト」をクリックしたときに検証されるのはELのみで、他のタイプの値は検証されないことに注意してください。結果はポップアップに表示されます。


    注意:

    「コンポーネント・プロパティ」ダイアログの汎用の「表示オプション」タブ内のどこにELを入力しても、そのエントリは自動的に検証されます。EL構文が無効な場合はエラーが表示され、値は適用も保存もされません。汎用の表示オプションは、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築の表示オプション・プロパティの表に記載されているオプションです。

    ELの検証は、汎用でない表示オプションには実行されません。


F.2 式言語のユースケース

この項では、ユーザーのロールや権限などに基づいて表示を行うためのEL式の使用例を示します。

この例では、式言語を使用して、ユーザーのロールに基づいてナビゲーション・モデル内のアイテムを表示または非表示にしています。式言語はOracle WebCenter Portalによって維持されるほぼすべての要素に対して存在しているので、ELを使用したユーザー・エクスペリエンスのパーソナライズは非常に強力なツールだと言えます。

次のELを使用して、ユーザー・ロールを決定できます。

#{WCSecurityContext.userInScopedRole['Role 1'] or   WCSecurityContext.userInScopedRole['Role 2']}

このELは、現在のユーザーの資格証明(この場合はrole)を、EL内で指定されている内容と比較しています。結果がtrueの場合、つまり指定されたロールのいずれかがユーザーに割り当てられている場合は、ナビゲーション・アイテムがユーザーに表示されます。結果がfalseの場合、ナビゲーション・アイテムはユーザーに表示されません。

EL内で参照するロールは、システム・ロール(AdministratorModeratorまたはParticipant)でもカスタム・ロールでも構いません。

このELでは、OR句を使用して2つの条件を接続しています。つまり、ユーザーがナビゲーション・アイテムが表示できるようになるには、Role 1またはRole 2のいずれかが必要です。

次の手順は、Moderatorロールが割り当てられたユーザーのみに表示されるナビゲーション・アイテム(別のポータルに対するページ問合せ)を追加する方法を示しています。


注意:

この演習では、自分のポータルにカスタム・ナビゲーション・モデルを適用済であるとします。シード済ナビゲーション・モデルは編集できません。


ポータル内のナビゲーションをパーソナライズするには:

  1. ポータル管理で「アセット」ページに移動して、左側ペインの「ナビゲーション」をクリックします。

    ブラウザで次のURLを入力して、「アセット」ページに直接移動することもできます。

    http://host:port/webcenter/portal/portalName/admin/assets
    
  2. ポータルで使用しているナビゲーション・モデルの「編集」クイック・リンクをクリックします。


    ヒント:

    現在のポータルが使用しているナビゲーション・モデルを判別するには、ポータルの管理設定に移動して、「ナビゲーション」フィールド内の値を確認します。


  3. 「編集 - navigation model」ダイアログで、「追加」メニューを開き、「ページ問合せ」を選択します。

  4. 「ターゲット」タブでは、次の操作を実行します。

    • 「名前」フィールドに、問合せの名前を入力します(例: moderatorQuery)。

    • 検索ページの横で、「ポータル」を選択し、現在のポータル名がフィールドに表示されるのを確認します。

    • 「表示可能」チェック・ボックスの横の「拡張編集オプション」アイコンをクリックして、「式ビルダー」を選択します。

  5. 「値の選択」を選択して、1つ目のドロップダウン・リストから「ポータル情報」、2つ目のリストから「CurrentPortalロール - 進行役」を選択します。

    #{WCSecurityContext.userInScopedRole['Moderator']}という式がテキスト・フィールドに表示されます。


    ヒント:

    カスタム・ロールで作業する場合は、「CurrentPortalロール - カスタム」を選択します。テキスト領域で、CustomRoleを強調表示して、カスタム・ロールの名前を入力します。


  6. 「アセット」ページに戻るまで「OK」をクリックします。

  7. 「保存」をクリックします。

これをテストするには、ポータルにメンバーを追加して、このユーザーにModerator以外のロールを割り当てます。ログオフして、そのユーザーとして再度ログインします。「ページ問合せ」ナビゲーション・アイテムは表示されないはずです。

F.3 アプリケーションに関連するEL

表F-1は、アプリケーションに関連するEL式をリストし、それが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

WebCenter Portalのみに関連するEL式の詳細は、第F.14.3項「WebCenter Portal情報に関連するEL式」を参照してください。

表F-1 アプリケーションに関連するEL式

機能

#{requestContext.skinFamily}

アプリケーション・レベルで構成されている要素や現在のユーザーのプリファレンス設定などに応じて、現在のWebリクエストで使用されるADF Facesスキン・ファミリの名前を返します。

#{adfFacesContext.skinFamily}と同じ値を返します。


F.4 セキュリティに関連するEL

表F-1は、アプリケーション・セキュリティに関連するEL式をリストし、それらが提供する機能のタイプを説明します。これらの式の一部は、Portal FrameworkアプリケーションとWebCenter Portalで構築されたポータルの両方で使用できます。「コンテキスト」列は、ELがFrameworkアプリケーション専用なのか、WebCenter Portal専用なのか、両方で使用できる(両方)のかを示します。

表F-2 セキュリティに関連するEL式

機能 コンテキスト

#{security.authenticated}

ELが呼び出されているコンテキスト内で現在のユーザーが認証済の場合はtrue、それ以外の場合はfalseを返します。

両方

#{securityContext.userName}

現在ログインしているユーザーのユーザー名を返します。現在ユーザーがログインしていない場合、値を返しません。

両方

#{WCSecurityContext.currentUser['userName']}

指定されたユーザーが現在のユーザーである場合はtrue、それ以外の場合はfalseを返します。

両方

#{WCSecurityContext.userInAppRole['role']}

指定されたOPSSアプリケーション・ロールが現在のユーザーに割り当てられている場合はtrueを返します。この式は、スコープを認識しない(ポータルをサポートしていない)Portal Frameworkアプリケーションで便利です。

例:

#{WCSecurityContext.userInAppRole['AppConnectionManager']}

Frameworkアプリケーション

#{WCSecurityContext.userInGroup['group']}

指定されたグループが現在のユーザーに割り当てられている場合はtrueを返します。例:

#{WCSecurityContext.userInGroup['Administrators']}

両方

#{security.pageContextCommunityModerator}

現在のユーザーが現在のポータルのモデレータの場合は、値trueを返します。

WebCenter Portal

#{WCSecurityContext.userInScopedRole['role']}

現在のスコープの指定されたロールが現在のユーザーに割り当てられている場合はtrueを返します。ロールはModeratorParticipantViewerまたはスコープ内で定義されたカスタム・ロールにできます。

スコープは暗黙的に現在のスコープに解決されます。このELをホーム・ポータルで使用した場合、ホーム・ポータルのGUIDと、アプリケーション・レベルで定義されたロールに解決されます。このELをポータル・スコープで使用した場合、ポータルに対して定義されたロールに解決されます。

WebCenter Portal


F.4.1 例: EL式を使用した、コンポーザの構造ビューへのアクセス制限

この項では、ユーザーのロールに基づいて表示を行うためのEL式の使用例を示します。この例では、ページ・スタイルを作成してそのソース・コードを編集し、AdvancedEditロールを付与されたユーザーのみがホーム・ポータル内でコンポーザの構造ビューにアクセスできるようにするEL式を追加します。

ホーム・ポータルでコンポーザの構造ビューへのアクセスを制限するには:

  1. WebCenter Portalに管理権限でログインして、WebCenter Portal管理の「セキュリティ」タブに移動します。

  2. AdvancedEditという名前の新しいロールを作成し、それをweblogicというユーザーに割り当てます。

    WebCenter Portalでのアプリケーション・レベルのロールと権限の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理の「ポータル間のセキュリティ管理」の章を参照してください。

    ユーザーweblogicはこれで、AdministratorAdvancedEditの2つのロールを持つことになります。

  3. 新しいページ・スタイル、たとえば空白ページを作成します(ページ・スタイルの作成の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のページ・スタイルの作成に関する項を参照してください)。

  4. コンポーザの構造ビューへのアクセス権をAdvancedEditロールを持つユーザーのみに付与するには、ページ・スタイルのソース・コードを編集して、<pe: pageCustomizable>タグに次の属性を追加します(図F-6)。

    toolbarLayout="message stretch statusindicator newline designViews="design #{WCSecurityContext.userInScopedRole['AdvancedEdit'] ? 'source' : '}" addonpanels stretch help button"
    

    ソース・コードの編集に関する詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のアセットのソース・コードの編集に関する項を参照してください。

    図F-6 ページ・スタイルのソース・コードの編集

    図F-6の説明が続きます
    「図F-6 ページ・スタイルのソース・コードの編集」の説明

  5. weblogic以外のユーザーとしてログインして、ホーム・ポータルで「空白ページ」ページ・スタイルを使用してページを作成します。コンポーザでページを開くと、デザイン・ビューにページが表示され、「構造」タブは表示されません。このユーザーにはAdvancedEditロールが付与されていないからです。

    ホーム・ポータル内でユーザーが使用可能なすべてのページ・スタイルにこの方法を適用すると、構造ビューへのアクセスが完全に制御されます。他のポータルにも同じ方法を適用できます。

F.5 一般設定に関連するEL

表F-2は、一般アプリケーションの設定に関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

表F-3 一般設定に関連するEL式

機能

#{generalSettings.userTimeZone}

現在のユーザーがアプリケーション・プリファレンスで選択しているタイムゾーンを返します。

#{generalSettings.preferredDateStyle}

現在のユーザーがアプリケーション・プリファレンスで選択している日付書式を返します。

#{generalSettings.preferredDatePattern}

現在のユーザーの優先日付書式パターンが設定されている場合はそれを返し、それ以外の場合はnullを返します。

日付とパターンの組合せはPortal Frameworkアプリケーションにのみ適用可能であり、設定されている場合は日付とスタイルの組合せよりも優先されます。

#{generalSettings.preferredTimeStyle}

現在のユーザーがアプリケーション・プリファレンスで選択している時間書式を返します。

#{generalSettings.preferredTimePattern}

現在のユーザーの優先時間書式パターンが設定されている場合はそれを返し、それ以外の場合はnullを返します。

#{generalSettings.preferredDateTimePattern}

現在のユーザーの日付書式と時間書式の優先パターンが設定されている場合はそれを返し、それ以外の場合はnullを返します。

#{generalSettings.preferredAccessibilityMode}

現在のユーザーの優先アクセシビリティ・モード(defaultinaccessibleまたはscreenReaderのいずれか)を返します。

#{generalSettings.preferredSkinName}

現在のユーザーの優先スキン名が指定されている場合はその名前、それ以外の場合はデフォルト値。

#{generalSettings.formattedCurrentDate}

現在のユーザーが選択しているロケールの現在の日付を返します。

#{generalSettings.formattedCurrentTime}

現在のユーザーが選択しているロケールの現在の時間を返します。

#{generalSettings.formattedCurrentDateTime}

現在のユーザーが選択しているロケールの現在の日付と時間を返します。

#{requestContext.skinFamily}

アプリケーション・レベルで構成されている要素や現在のユーザーのプリファレンス設定などに応じて、現在のWebリクエストで使用されるADF Facesスキン・ファミリの名前を返します。


F.6 ポータル・リソースに関連するEL

この項の式を使用して、ポータル・リソースの問合せを行います。EL式によるポータル・リソースの問合せは、APIコールによるリソースの問合せと類似しています。すなわち、問合せパラメータは.property['value']という形式で設定する必要があり、propertyidresourceScopeなどのプロパティの名前、valueは属性の検索値です。

問合せを実行すると、1件または複数件の結果が返される可能性があります。問合せデザイナは、どちらの結果を望むのかを決める必要があります。問合せデザイナは式で次の値のいずれかを使用して、1件の結果を返すのか、複数件の結果を返すのかを指定します。


注意:

式で使用されているsingleResultまたはresultListは、内部的には問合せのエンド・ポイントとして使用され、検出されるとすぐに問合せが実行されます。エンド・ポイント以降に何かが設定されていた場合、予想外の動作が発生する可能性があります。


次の例は、表示名にmyPageが含まれる、最初に見つけたページ・テンプレート・ポータル・リソースを返します。

#{srmContext.resourceType['siteTemplate'].displayName['myPage'].singleResult}

次の例は、ディレクトリresourceDirに存在し、説明にsampleDescが含まれるページ・テンプレート・ポータル・リソースのリストを返します。

#{srmContext.resourceType['siteTemplate'].description['sampleDesc'].contentDirectory['resourceDir'].resultList}

このクラスのプロパティには、このクラスの任意の属性が含まれます。たとえば、IdDisplayNameiconURIcontentDirectoryなどのプロパティが含まれます。

プロパティ値は、明示的な値として、またはそのタイプの値を返すEL式として、指定できます。たとえば、次の2つの問合せは同じ結果を返します。

#{srmContext.id['resourceId'].singleResult}

#{srmContext.id['spacesContext.currentSpace.uiMetadata.siteTemplateId'].singleResult}

EL式を使用する問合せでは、このクラスの任意のプロパティをproperty['value']という形式で、任意の順序で使用できます。たとえば、次の2つの問合せは同じ結果を返します。

#{srmContext.resourceScope['scopeName'].id['resourceId'].singleResult}

#{srmContext.id['resourceId'].resourceScope['scopeName'].singleResult} 

表F-4は、ポータル・リソースに関連するEL式をリストし、それぞれが提供する機能のタイプを説明します。表F-4の多くの式は、返すリソースを絞り込むためのブロックを構築します。すなわち、必ずしも単独で使用することを意図したものではなく、ELを組み合せて必要な問合せを構築するために使用します。

たとえば、次の式は、3つのポータル・リソース関連ELを使用して、特定のポータル・テンプレートを返す問合せを1つ構築します。これは、親ポータルstoresからテンプレートstoresMasterTemplateを取得します。

#{srmContext.resourceScope['stores'].resourceType['siteTemplate'].displayName['storesMasterTemplate'].singleResult}

WebCenter Portalアセットのみに関連するEL式の詳細は、第F.14.4項「アセットに関連するEL式」を参照してください。

表F-4 ポータル・リソースに関連するEL

EL 機能

#{srmContext.id['resourceGUID']}

指定されたIDのポータル・リソースを返します

#{srmContext.displayName['resourceDisplayName']}

指定された表示名を持つ任意のポータル・リソースを返します

#{srmContext.displayNameKey['displayNameKey']}

指定された表示名キーを持つ任意のポータル・リソースを返します

#{srmContext.description['resourceDescription'].singleResult}

指定された値が説明に含まれるポータル・リソースを1つ返します

複数の結果を取得するには、singleResultのかわりにresultListを使用します。

#{srmContext.descriptionKey[descriptionKey].singleResult}

指定された説明キーを持つポータル・リソースを1つ返します

説明キーは、ポータル・リソースの説明を示す、xsrtファイル内のキーです。

複数の結果を取得するには、singleResultのかわりにresultListを使用します。

#{srmContext.createdDate['resourceCreationDate']}

指定された作成日を持つ任意のポータル・リソースを返します

#{srmContext.modifiedBy['resourceLastModifiedBy']}

指定されたユーザー名のユーザーにより最後に変更された任意のポータル・リソースを返します

#{srmContext.modifiedDate['resourceLastModifiedDate']}

指定された日付以前に最後に変更された任意のポータル・リソースを返します

#{srmContext.resourceScope['resourceScope']}

指定されたスコープに該当する任意のポータル・リソースを返します

#{srmContext.category['categoryName']}

指定されたカテゴリに該当する任意のポータル・リソースを返します

例:

#{srmContext.category['siteTemplates']}

#{srmContext.contentDirectory['contentDirectory']}

指定されたディレクトリに格納されている任意のポータル・リソースを返します

#{srmContext.metadataFile['metadataFileLocation']}

指定されたメタデータ・ファイルからポータル・リソース・メタデータを返します

たとえば、次の式はファイル/home/metadata/data.xmlからリソース・メタデータを返します:

#{srmContext.metadataFile['/home/metadat/data.xml']}

#{srmContext.jspx['jspxFileLocation']}

指定された場所にある任意のjspxファイルを返します

たとえば、次の式はpage.jspxファイルを返します。

#{srmContext.jspx['/home/web/page.jspx']}

#{srmContext.pageDef['pageDefinition']}

指定されたページ定義が含まれる任意のjspxファイルを返します

#{srmContext.iconURI['iconURI']}

指定されたアイコンURIのアイコンを返します

#{srmContext.excludeFrom['excludeFromScopes']}

より大きな式で使用され、除外されたスコープで使用可能なポータル・リソースを除く、指定されたすべてのリソースを返します

#{srmContext.usesCustomSecurity['usesCustomSecurity']}

より大きな式で使用され、カスタム・セキュリティを使用する、または使用しない、任意のポータル・リソースを返します

usesCustomSecurityTRUEまたはFALSEに設定します。例:

#{srmContext.usesCustomSecurity['TRUE']}

#{srmContext.seeded['seeded']}

より大きな式で使用され、指定された値に応じてシードされる、またはシードされない、任意のポータル・リソースを返します

seededTRUEまたはFALSEに設定します。例:

#{srmContext.seeded['TRUE']}

#{srmContext.visibleType['visibleType']}

より大きな式で使用され、指定された可視性タイプの任意のポータル・リソースを返します

visibleTypeTRUEFALSEまたはポータル・リソースが絶対に表示されないことを示すNEVERに設定します。たとえば、次の式は表示されるポータル・リソース、すなわちShowに設定されているポータル・リソースを返します。

#{srmContext.visibleType['TRUE']}

#{srmContext.visible['visible']}

より大きな式で使用され、可視性がTRUEまたはFALSEのどちらかに設定されている1つまたは複数のポータル・リソースを返します。

#{srmContext.createdBy['resourceCreator']}

より大きな式で使用され、指定されたユーザーによって作成された任意のポータル・リソースを返します

#{srmContext.resourceType['resourceType']}

より大きな式で使用され、指定されたタイプの1つまたは複数のポータル・リソースを返します

たとえば、次の式はタイプSITE_TEMPLATEのポータル・リソースを検索します。

#{srmContext.resourceType['SITE_TEMPLATE']}

すべてのリソース・タイプのリストは、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスGenericSiteResourceTypesクラスを参照してください。

#{srmContext.version['version']}

より大きな式で使用され、指定されたバージョンのアプリケーションで使用可能な1つまたは複数のポータル・リソースを返します

#{srmContext.resourceScope['scopeName']}

より大きな式で使用され、指定されたスコープで使用可能な1つまたは複数のポータル・リソースを返します

たとえば、次の式はスコープ(このインスタンスではポータル)がMyPortalのポータル・リソースを検索します。

#{srmContext.resourceScope['MyPortal']}

デフォルト・スコープ、すなわちアプリケーション・スコープ内を検索するには、defaultScopeを使用します。

#{srmContext.searchType['searchType']}

より大きな式で使用され、組み込まれている他の式で設定された値が含まれる、またはその値に等しい、1つまたは複数のポータル・リソースを返します

searchTypeCONTAINSまたはEQUALSに設定します。


F.7 ナビゲーションに関連するEL

表F-4は、アプリケーション・ナビゲーションに関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すナビゲーションELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

表F-5 ナビゲーションに関連するEL式

機能

ナビゲーション・コンテキスト式


#{navigationContext.defaultNavigationModel}

デフォルト・ナビゲーション・モデルを返します。プリファレンスBeanから値を取得します。プリファレンスBeanは、adf-config.xmlstatic valueのプリファレンス設定に基づいて値を取得します。

次の例は、指定されたデフォルト・ツリー・モデルを返します。

#{navigationContext.defaultNavigationModel.defaultTreeModel}

defaultMenuModeldefaultListModelも使用できます(次のリストを参照)。

#{navigationContext.currentNavigationModel}

現在のビュー(すなわち現在のページ)にナビゲートするために使用したナビゲーション・モデルを返します。

ページには、複数のナビゲーション・モデルが存在する可能性があります。現在のページにナビゲートするために使用したモデルのみが、現在のナビゲーション・モデルになります。

現在のナビゲーション・モデルは、processActionがコールされた場合にのみ設定されます。

次の例は、現在のナビゲーション・モデルのデフォルト・ツリー・モデルを返します。

#{navigationContext.currentNavigationModel.defaultTreeModel}

defaultMenuModeldefaultListModelも使用できます。

関連項目: #{navigationContext.processAction}.

#{navigationContext.navigationModel['model_path']}

パスで指定されたナビゲーション・モデルを返します。

例:

#{navigationContext.navigationModel['/oracle/webcenter/portalapp/navigations/default-navigation-model']}

パスは角カッコで囲んで入力するだけでよく、パラメータ名を覚える必要はありません。後方互換性のために、カンマ区切りパラメータもサポートされています。使用可能なパラメータ(と例)を次に示します。

  • modelPath=/oracle/webcenter/portalapp/navigations/default-navigation-model

  • modelScope=/oracle/webcenter/portalapp/navigation

  • modelId=default-navigation-model

注意: modelScopemodelIdは、次の例のように、一緒に使用します。

#{navigationContext.navigationModel['modelScope=/oracle/webcenter/portalapp/navigations,modelId=default-navigation-model']}

#{navigationContext.processAction}

UIコンポーネントのactionListener属性にバインドするデフォルト・ナビゲーション方法を返します。これは、ナビゲート先のターゲット・リソースが、アクションUIコンポーネントのnode属性またはpath属性で渡されることを想定しています。

node属性は、通常、反復の場合に使用され、path属性は、通常、静的リンクを作成するために使用されます。両方が指定されている場合は、node属性が使用されます。path属性を使用する場合は、ナビゲーション・モード・オブジェクトを渡すためにmodel属性も指定する必要があることに注意してください。model属性が指定されていない場合は、現在のナビゲーション・モデルが使用されます。

node属性の使用例を示します。

<af:forEach var="node" varStatus="vs"
 items="#{navigationContext.defaultNavigationModel.rootNode.children}">
  <af:subform id="pt_sfm1">
   <af:commandLink id="pt_cl1"
    text="#{node.title}"
    inlineStyle="font-size:small;color:White;"
    actionListener="#{navigationContext.processAction}"
    action="pprnav">
   <f:attribute name="node" value="#{node}"/>
    <af:showPopupBehavior popupId="menuPopup"
     align="afterStart"
     triggerType="mouseOver"/>
  </af:commandLink>

path属性の使用例を示します。

<af:commandLink id="pt_cl1" text="Prescriptions"
  inlineStyle="font-size:small; color:White;"
  actionListener="#{navigationContext.processAction}"
  action="pprnav">
<f:attribute name="path" value="/prescriptions"/>
<f:attribute name="model"   value="#{navigationContext.defaultNavigationModel}"/>
</af:commandLink>

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


#{navigationContext.defaultNavigationModel.defaultTreeModel}

#{navigationContext.defaultNavigationModel.defaultMenuModel}

#{navigationContext.defaultNavigationModel.defaultListModel}

#{navigationContext.defaultNavigationModel.defaultSiteMap}

デフォルト設定に基づいて、ツリー/メニュー/リスト・モデルを返します

この設定のデフォルト値は次の行を参照してください。たとえば、depthのデフォルト値は0です。

defaultSiteMapは、デフォルト設定に基づいて、ナビゲーションのサイト・マップのXMLを返します。

この式は、次のタイプのモデルを返します。

  • ChildPropertyTreeModel - <af:tree>コンポーネントで使用

  • ChildPropertyMenuModel - <af:breadcrumbs>コンポーネントまたは<af:menu>コンポーネントで使用

  • ListNavigationResource - <af:foreach>で使用

#{navigationContext.defaultNavigationModel.treeModel['parameters']}

#{navigationContext.defaultNavigationModel.menuModel['parameters']}

#{navigationContext.defaultNavigationModel.listModel['parameters']}

#{navigationContext.defaultNavigationModel.siteMap['parameters']}

指定されたカンマ区切りパラメータに基づいて、ツリー/メニュー/リスト・モデルを返します。使用可能なパラメータ(と例としてのデフォルト値)を次に示します。

  • startNode=/ - モデルの開始ノードを指定します(ルート・ノードをリクエストする場合を除き、"/"を接頭辞として指定する必要はありません。例: home)。

  • includeStartNode=true - 開始ノード(前述のルート・ノードなど)を含める場合はtrue、その子から開始する場合はfalseを指定します。

  • depth=0 - フェッチの初期深さを定義します。0は、ツリー全体をフェッチすることを意味し、時間がかかることがあります。その場合は、オンデマンドでフェッチするために1を使用します(ユーザーが「展開」アイコンをクリックする場合)。

  • prefetchOnly=false - デフォルトでは(true)、最初にリクエストされた深さレベルまでノードを返し、より深いレベルのノードはオンデマンドで返されます。ノードの初期セットのみを使用する場合は、falseを使用します。その場合、より深いノードがあっても、リクエストされたときに後でより深いノードを返しません。

siteMapの場合、使用可能なパラメータはstartNodeincludeStartNodeです。

例:

#{navigationContext.defaultNavigationModel.treeModel['startNode=home,includeStartNode=false,depth=2']}

#{navigationContext.defaultNavigationModel.rootNode}

ナビゲーション・モデルのルート・ノード(タイプNavigationResource)を返します。

例:

<af:commandLink id="pt_cl1" text="Prescriptions"
  inlineStyle="font-size:small; color:White;"
  actionListener="#{navigationContext.processAction}"
  action="pprnav">
 <f:attribute name="node"
    value="#{navigationContext.
    defaultNavigationModel.
    rootNode.children[2]"/>
</af:commandLink>

#{navigationContext.defaultNavigationModel.node['path']}

指定されたパスに基づいてノード(タイプNavigationResource)を返します(ルート・ノードをリクエストする場合を除き、"/"を接頭辞として指定する必要はありません。例: '/')。

例:

#{navigationContext.defaultNavigationModel.node['home/page1']}

#{navigationContext.defaultNavigationModel.currentSelection}

現在選択されているナビゲーション・ポータル・リソースを返します。

#{navigationContext.defaultNavigationModel.newCurrentSelection['path']}

与えられたパスによって指定されたノードに現在の選択を設定します(ルート・ノードをリクエストする場合を除き、/を接頭辞として指定する必要はありません。例: '/')。成功した場合、タイプNavigationResourceの新しく選択したノードを返します。

ユーザーは、実際にノードにナビゲートせずに、現在の選択を明示的に設定できる必要があります。

これは、ユーザーがページを直接入力し、選択が設定されていない場合に使用できます。これは、現在の選択が存在しない場合に何をデフォルトにするかをユーザーが制御するメカニズムを提供します。

例:

<c:set  value="${navigationContext.defaultNavigationModel.newCurrentSelection['home/page1']}"
 var="currSel" scope="session"/>
<c:if test="${currSel!=null}">
 <af:forEach items="#{currSel.children}"
  var="cnode" varStatus="cnodestatus">
...</c:if>

#{navigationContext.defaultNavigationModel.attributes.Description}

#{navigationContext.defaultNavigationModel.attributes['Description']}

ナビゲーション・モデルの指定された属性の値を返します。

#{navigationContext.defaultNavigationModel.properties['propertyName']}

ナビゲーション・モデルの指定されたプロパティの値を返します。ここで、propertyNameはrootNodeまたはcurrentSelectionのどちらかです。

ナビゲーション・ポータル・リソース式


#{node.attributes.Description}

#{node.attributes['Description']}

ナビゲーション・ポータル・リソースの指定された属性の値を返します。

#{node.parameters.StockSymbol}

#{node.parameters['StockSymbol']}

ナビゲーション・ポータル・リソースの指定されたパラメータの値を返します。

#{node.parametersRaw.StockSymbol}

#{node.parametersRaw['StockSymbol']}

ナビゲーション・ポータル・リソースの指定されたパラメータのRAW値(評価前の値)を返します。

#{node.title}

ナビゲーション・ポータル・リソースのタイトルを返します。

#{node.path}

ナビゲーション・ポータル・リソースへのパスを返します。

#{node.externalURL}

タイプExternal Linkのナビゲーション・ポータル・リソースのURLを返します。

#{node.prettyUrl}

このナビゲーション・ポータル・リソースの識別パスを返します。

#{node.prettyUrlPath}

#{node.prettyUrlPath[N]}

深さを指定して識別パスのコレクションを返し、別のナビゲーション・ビューを動作させる開始パスとして使用できるようにします。

たとえば、currentSelectionhome/company/products/applicationsである場合、次のELはhome/company/productsを返します。

#{node.prettyUrlPath[3]}

#{node.goLinkPretty Url}

goLinkの宛先に適合するこのナビゲーション・ポータル・リソースの識別パスを返します

<af:goLink id="pt_gl2" text="#{node.title}"
   destination="#{node.goLinkPrettyUrl}"
   targetFrame="#{node.attributes['Target']}"
   inlineStyle="font-size:small;#{node.selected ?
   'font-weight:bold;' : ''}"/>

#{node.separator ? ... : ...}

このポータル・リソースがセパレータ・アイテムかどうかを返します。

#{node.navigable ? ... : ...}

このポータル・リソースにナビゲート可能かどうかを返します。

#{node.selected ? ... : ...}

このポータル・リソースが現在選択されているかどうかを返します。

#{node.currentlySelected ? ... : ...}

ポータル・リソースが現在選択されているポータル・リソースであり、モデルが現在選択されているモデルであるかどうかを返します。

#{node.onSelectedPath ? ... : ...}

このノードが選択されたパス上に存在するかどうかを返します。これは、たとえば選択されているタブを強調表示する場合に便利です。

たとえば、現在選択されているノードがhome/company/products/applicationsである場合、次のELはhomeタブを強調表示します。

<c:set  value="${navigationContext.defaultNavigationModel.node['home']}"
 var="home" scope="session"/>
  <af:commandImageLink id="cil1"
    icon="#{(home.onSelectedPath) ?
    '/images/caremark/nav/HomeSelected.png' :
    '/images/caremark/nav/HomeIcon.png'}"
    actionListener="#{navigationContext.processAction}"
    action="pprnav">
  <f:attribute name="node" value="#{home}"/></af:commandImageLink>

#{node.leaf ? ... : ...}

このリソースがリーフ・ノードかどうかを返します。

#{node.parent}

このノードの親ノード(タイプNavigationResource)を返します。ルート・ノードの場合、nullを返します。

#{node.ancestors}

このノード(タイプNavigationResource)の祖先の、ルート・ノードで始まる階層リストを返します。

たとえば、現在のノードがhome/company/products/applicationsである場合、次のELは次の値を返します。

  • #{node.ancestors[1]}homeを表すノードを返します。

  • #{node.ancestors[3]}はhome/company/productsを表すノードを返します

#{node.depth}

このノードのルート・ノードからの深さを返します。ルート・ノードの深さは0です。

#{node.siblings}

このノード(タイプNavigationResource)の兄弟のリストを返します(このノード自体を含む)。

#{node.nextSibling}

このノード(タイプNavigationResource)のリストの次の兄弟を返します。

たとえば、次のコードでは、1つの行内に2つのセパレータが連続して出力されることはありません。

<c:if test="${(node.separator) && (!node.nextSibling.separator}">
  <af:separator id="s166"/>
</c:if>

#{node.previousSibling}

このノードのリスト内の前の兄弟(タイプNavigationResource)を返します。

#{node.index}

このノードの、その兄弟からの0相対インデックスを返します。

#{node.children}

#{node.children[N].title}

#{node.children[N].children[N].title}

子リソースのコレクションを返します。

#{node.childCount}

このノードの子の数を返します。

#{node.childByIndex['index']}

0相対インデックスで指定された子ノード(タイプNavigationResource)を返します。

見つからない場合、nullを返します。

#{node.childByPath['admin']}

このノードからの相対パスで指定された子ノード(タイプNavigationResource)を返します。

パスは1レベルよりも深くすることができ、'/'を接頭辞として指定することは必要ありません。見つからない場合、nullを返します。

#{node.properties['propertyName']}

ナビゲーション・ポータル・リソースの指定されたプロパティの値を返します。propertyNameは、separatortitleprettyUrlprettyUrlPathdepthleafchildCountnavigableselectedまたはcurrentlySelectedのいずれかです。


F.7.1 例: ナビゲーションに対するEL式の使用

この項では、親ポータルの共有ページから2つのサブポータルのアクティビティを監視する場合のナビゲーション・モデルの使用例を示します。この例では、アクティビティ・ストリーム・タスク・フローを含むページを使用します。タスク・フローのコンテンツは、ページに渡されるパラメータによって決定されます。ナビゲーション・モデルには、このページにリンクする2つのリンクが含まれます。1つ目のリンクはsubportal1をパラメータとして渡すので、アクティビティ・ストリーム・タスク・フローにはsubportal1のアクティビティが表示されます。2つ目のリンクはsubportal2をパラメータとして渡します。つまり、ページのコンテンツは、ナビゲーションでクリックするリンクによって異なります。

ELを使用して親ポータルからサブポータルのアクティビティを監視するナビゲーション・モデルを構築するには:

  1. WebCenter Portalで、ポータルと2つのサブポータルを作成します。サブポータルの作成時には、使用する内部名(subportal1subportal2など)をメモしておきます。

  2. ポータルで、Subportal Activityという名前のページを作成し、アクティビティ・ストリーム・タスク・フローをこのページに追加します。タスク・フローの追加方法の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のコンポーネントのページへの追加に関する項を参照してください。

  3. 新しく作成したページ用に、ページ・パラメータ(subportalName)を作成します。詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のページ・パラメータの追加または変更に関する項を参照してください。

    次のELをパラメータの値として使用します。

    #{empty navigationContext.currentNavigationModel.currentSelection.parameters.subspaceName ? 'subportal1' : navigationContext.currentNavigationModel.currentSelection.parameters.subspaceName}
    

    ここで、'subportal1'は、ページ・パラメータ用にナビゲーションから何も渡されなかった場合に使用される値です。

  4. アクティビティ・ストリーム・タスク・フローの設定を編集します。「コンポーネント・プロパティ」ダイアログの「パラメータ」タブで、「スペース」パラメータに対して式ビルダーを開き、「ページ・パラメータ」に対してsubportalNameを選択します。

  5. 「表示オプション」タブでは、「テキスト」フィールドで、アクティビティを表示するサブポータルの名前を示す値を指定します。たとえば、次のELを使用します。

    #{bindings.subspaceName} Activity
    
  6. 自分のページを表示するポータルを渡すナビゲーションを構築します。

    1. ポータル・デフォルト・ナビゲーション・モデルに基づいてナビゲーションを作成します。

    2. リンク・ナビゲーション・アイテムを追加することで、ナビゲーションを編集します。

    3. 「ターゲット」タブの「名前」フィールドで、リンク・アイテムの名前をSub Portal 1と指定します。

    4. 「パス」フィールドで、「Subportal Activity」ページを選択します。

    5. 「パラメータ」タブの「subportalName」フィールドで、最初のサブポータルの内部名、subportal1を指定します。

  7. 新しく作成されたリンクをコピーして、それを編集し、2つ目のサブポータルsubportal2に対するリンクを作成します。

    編集時、「ターゲット」タブで変更する必要があるのは、リンクの「名前」のみです。「パラメータ」タブでは、「subportalName」パラメータの値をsubportal2 (2つ目のサブポータルの内部名)に変更する必要があるだけです。

  8. 新しく作成されたナビゲーションが、ポータルの現在のナビゲーションとして設定されていることを確認します。

  9. これで、共有のSubportal Activityページに移動できる2つのリンクが作成されます。クリックしたリンクに応じて、ポータルの異なる値が渡されます。

F.8 ツールとサービスに関連するEL

表F-5は、ツールとサービスに関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

表F-6 ツールとサービスに関連するEL式

機能

#{webcenterService['serviceId']}

サービスID serviceIdによって表されるWebCenter Portalツールまたはサービスを表すoracle.webcenter.framework.service.Serviceオブジェクト。たとえば、次のELはドキュメント・サービスを返します。

#{webcenterService['oracle.webcenter.doclib']}

サービスIDについては、表F-7を参照してください。

#{webcenterService['serviceId'].configured}

サービスID serviceIdによって表されるWebCenter Portalツールまたはサービスが、現在のPortal Frameworkアプリケーションで使用するように構成されているかどうかを示すブール値を返します。たとえば、次のELは、アプリケーションでディスカッションを使用できる場合はtrue、それ以外の場合はfalseを返します。

#{webcenterService['oracle.webcenter.collab.forum'].configured}

サービスIDについては、表F-7を参照してください。

#{sessionContext['oracle.webcenter.collab.forum'].groupInfo['portalName'].forumId}

指定されたポータル・ディスカッション・フォーラムのフォーラムIDを返します。portalNameのかわりにポータル名を入力します。

#{sessionContext['oracle.webcenter.collab.forum'].groupInfo['portalName'].categoryId}

指定されたポータル・ディスカッション・フォーラムのカテゴリIDを返します。portalNameのかわりにポータル名を入力します。


表F-7は、WebCenter Portalのツールとサービスに関連付けられているサービスIDをリストしています。

表F-7 サービスとツールのID

サービス/ツール ID

お知らせ

oracle.webcenter.collab.announcement

ディスカッション

oracle.webcenter.collab.forum

ドキュメントとWiki

oracle.webcenter.doclib

イベント

oracle.webcenter.collab.calendar.community

インスタント・メッセージおよびプレゼンス(IMP)

oracle.webcenter.collab.rtc

リンク

oracle.webcenter.relationship

リスト

oracle.webcenter.list

メール

oracle.webcenter.collab.mail

通知

oracle.webcenter.notification

ページ

oracle.webcenter.page

ピープル・コネクション: アクティビティ・ストリーム

oracle.webcenter.activitystreaming

ピープル・コネクション: コネクション

oracle.webcenter.peopleconnections.connections

ピープル・コネクション: フィードバック

oracle.webcenter.peopleconnections.kudos

ピープル・コネクション: メッセージ・ボード

oracle.webcenter.peopleconnections.wall

ピープル・コネクション: プロファイル

oracle.webcenter.peopleconnections.profile

投票

oracle.webcenter.collab.survey

最近のアクティビティ

oracle.webcenter.recentactivity

アクティビティ・グラフ

oracle.webcenter.activitygraph

RSS

oracle.webcenter.rss

検索

oracle.webcenter.search

タグ

oracle.webcenter.tagging

ブログ

oracle.webcenter.blog

ワークリスト

oracle.webcenter.worklist


F.9 ドキュメントに関連するEL

表F-8は、ドキュメントに関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

表F-8 ドキュメントに関連するEL式

機能

#{documentsService.defaultConnectionName}

デフォルトのコンテンツ・リポジトリ接続名を取得します。接続名が定義されていない場合、nullを返します。

#{documentsService.configured}

ドキュメント機能が構成されているかどうかを確認します。ドキュメント機能が構成されている場合はtrue、それ以外の場合はfalseを返します。


F.10 ピープル・コネクションに関連するEL

表F-9は、ピープル・コネクションのプロファイル機能に関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。


注意:

エントリsecurityContext.userNameは、すべてのプロファイル式に含まれ、現在のユーザーの名前を返します。情報はユーザーのプロファイルに存在する場合にのみ返されることにも注意してください。情報がプロファイルに含まれない場合、null値が返されます。


表F-9 ピープル・コネクション(プロファイル)に関連するEL式

機能

#{webCenterProfile[userName].ManagerDisplayName}

#{webCenterProfile[securityContext.userName].ManagerDisplayName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーのマネージャの表示名。

#{webCenterProfile[userName].employeeNumber}

#{webCenterProfile[securityContext.userName].employeeNumber}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの従業員番号。

#{webCenterProfile[userName].businessPOBox}

#{webCenterProfile[securityContext.userName].businessPOBox}

現在のユーザーが知ることを許可されている場合、指定されたユーザーに関連付けられている私書箱番号。

#{webCenterProfile[userName].timeZone}

#{webCenterProfile[securityContext.userName].timeZone}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先が存在するタイムゾーン。

#{webCenterProfile[userName].description}

#{webCenterProfile[securityContext.userName].description}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの説明(「プロファイル」の「自己紹介」より)。

#{webCenterProfile[userName].department}

#{webCenterProfile[securityContext.userName].department}

現在のユーザーが知ることを許可されている場合、指定されたユーザーが所属する部門。

#{webCenterProfile[userName].businessPager}

#{webCenterProfile[securityContext.userName].businessPager}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先ページャ番号。

#{webCenterProfile[userName].businessCity}

#{webCenterProfile[securityContext.userName].businessCity}

現在のユーザーが知ることを許可されている場合、指定されたユーザーが勤務する市区町村。

#{webCenterProfile[userName].maidenName}

#{webCenterProfile[securityContext.userName].maidenName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの旧姓。

#{webCenterProfile[userName].businessFax}

#{webCenterProfile[securityContext.userName].businessFax}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先FAX番号。

#{webCenterProfile[userName].dateofHire}

#{webCenterProfile[securityContext.userName].dateofHire}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの入社日。

#{webCenterProfile[userName].nameSuffix}

#{webCenterProfile[securityContext.userName].nameSuffix}

現在のユーザーが知ることを許可されている場合、ユーザーの名前に追加される情報(Esq.Jr.など)。

#{webCenterProfile[userName].middleName}

#{webCenterProfile[securityContext.userName].middleName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーのミドル・ネーム。

#{webCenterProfile[userName].homePhone}

#{webCenterProfile[securityContext.userName].homePhone}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの自宅電話番号。

#{webCenterProfile[userName].employeeType}

#{webCenterProfile[securityContext.userName].employeeType}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの従業員タイプ分類(IC4など)。

#{webCenterProfile[userName].lastName}

#{webCenterProfile[securityContext.userName].lastName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの姓。

#{webCenterProfile[userName].dateofBirth}

#{webCenterProfile[securityContext.userName].dateofBirth}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの誕生日。

#{webCenterProfile[userName].businessState}

#{webCenterProfile[securityContext.userName].businessState}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先が存在する都道府県。

#{webCenterProfile[userName].homeAddress}

#{webCenterProfile[securityContext.userName].homeAddress}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの自宅の住所。

#{webCenterProfile[userName].businessStreet}

#{webCenterProfile[securityContext.userName].businessStreet}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先番地。

#{webCenterProfile[userName].businessPostalCode}

#{webCenterProfile[securityContext.userName].businessPostalCode}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの郵便番号。

#{webCenterProfile[userName].initials}

#{webCenterProfile[securityContext.userName].initials}

現在のユーザーが知ることを許可されている場合、指定されたユーザーのイニシャル。

#{webCenterProfile[userName].firstName}

#{webCenterProfile[securityContext.userName].firstName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの名。

#{webCenterProfile[userName].organizationalUnit}

#{webCenterProfile[securityContext.userName].organizationalUnit}

現在のユーザーが知ることを許可されている場合、指定されたユーザーが所属する組織単位(D10など)。

#{webCenterProfile[userName].wirelessAcctNumber}

#{webCenterProfile[securityContext.userName].wirelessAcctNumber}

現在のユーザーが知ることを許可されている場合、指定されたユーザーのワイヤレス・アカウント番号。

#{webCenterProfile[userName].businessPhone}

#{webCenterProfile[securityContext.userName].businessPhone}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先電話番号。

#{webCenterProfile[userName].businessCountry}

#{webCenterProfile[securityContext.userName].businessCountry}

現在のユーザーが知ることを許可されている場合、指定されたユーザーが配属されている国。

#{webCenterProfile[userName].preferredLanguage}

#{webCenterProfile[securityContext.userName].preferredLanguage}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの優先言語。

#{webCenterProfile[userName].displayName}

#{webCenterProfile[securityContext.userName].displayName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの表示名。

#{webCenterProfile[userName].userName}

#{webCenterProfile[securityContext.userName].userName}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの実際の名前。

#{webCenterProfile[userName].title}

#{webCenterProfile[securityContext.userName].title}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの役職名。

#{webCenterProfile[userName].businessEmail}

#{webCenterProfile[securityContext.userName].businessEmail}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの勤務先電子メール・アドレス。

#{webCenterProfile[userName].organization}

#{webCenterProfile[securityContext.userName].organization}

現在のユーザーが知ることを許可されている場合、指定されたユーザーが所属する組織(Salesなど)。

#{webCenterProfile[userName].businessMobile}

#{webCenterProfile[securityContext.userName].businessMobile}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの携帯電話番号。

#{webCenterProfile[userName].expertise}

#{webCenterProfile[securityContext.userName].expertise}

現在のユーザーが知ることを許可されている場合、指定されたユーザーの専門。


F.11 パーソナライズに関連するEL

表F-10は、パーソナライズに関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

表F-10 パーソナライズに関連するEL式

機能

#{p13nContext.reset}

起動元のコンテキスト・オブジェクトの状態をクリアします。

他の例:

#{p13nContext.conductor['ConductorConnection'].reset} 
#{p13nContext.conductor['ConductorConnection'].namespaces['MyNamespace'].reset}
#{p13nContext.properties['PropertiesConnection'].namespaces['MyNamespace'].setDefinitions['MyPropertySetDefinition'].set['MyPropertySet'].reset}

#{p13nContext.properties['PropertiesConnection'].namespaces['MyNamespace'].setDefinitions['MyPropertySetDefinition'].set['MyPropertySet'].update}

フォームにバインドされている場合、設定されているプロパティを新しい値で更新します。

updateメソッドはコンテキストPropertySetContextのみに適用され、フォームベースのアクションの一部としてのみコールできます。

#{p13nContext.properties['PropertiesConnection'].namespaces['MyNamespace'].setDefinitions['MyPropertySetDefinition'].set['MyPropertySet'].results}

コンテキスト・オブジェクトの結果を取得します。PropertySetContextの場合、指定された名前のプロパティ・セットおよびプロパティ・セット定義を取得します(存在する場合)。

ScenarioExecutionContextParameterizedScenarioExecutionContextの場合、シナリオ結果を取得します。

他の例:

#{p13nContext.conductor['ConductorConnection'].namespaces['MyNamespace'].scenario['MyScenario'].results}
#{p13nContext.conductor['ConductorConnection'].namespaces['MyNamespace'].scenario['MyScenario'].withInput['input1=val1;input2=value2;input3=value3'].results} 

#{p13nContext.conductor['PropertiesConnection'].namespaces['MyNamespace'].scenario['MyScenario'].results}

指定された名前のシナリオを実行します。

#{p13nContext.conductor['ConductorConnection'].namespaces['MyNamespace'].scenario['MyScenario'].withInput['input1=val1;input2=value2;input3=value3'].results}

入力パラメータで指定された名前のシナリオを実行します。入力パラメータは、次の形式に従っている必要があります。

<paramOne>=<valueOne>;<paramTwo>=<valueTwo>;<paramThree>=<valueThree> 

各パラメータ名および値は、セミコロンで区切ります。

withInputメソッドはコンテキストScenarioExecutionContextのみに適用されます。

#{p13nContext.conductor['ConductorConnection'].namespaces[myManagedBean.namespace].scenario[myManagedBean.scenario].isError}

現在のコンテキスト・オブジェクトでエラーが発生したかどうかを判断します。

isErrorメソッドはPropertySetContext~ScenarioExecutionContextのみに適用されます。

他の例:

#{p13nContext.properties['PropertiesConnection'].namespaces['MyNamespace'].setDefinitions['MyPropertySetDefinition'].set['MyPropertySet'].isError}

#{p13nContext.conductor['ConductorConnection'].namespaces['myManagedBean.namespace'].scenario['myManagedBean.scenario'].errorMessage}

現在のコンテキスト・オブジェクトでエラーが発生した場合は、エラー・メッセージを返します。

errorMessageメソッドはPropertySetContext~ScenarioExecutionContextのみに適用されます。

他の例:

#{p13nContext.properties['PropertiesConnection'].namespaces['MyNamespace'].setDefinitions['MyPropertySetDefinition'].set['MyPropertySet'].errorMessage}

F.12 偽装に関連するEL

表F-11は、WebCenter Portal偽装に関連するEL式をリストし、それらが提供する機能のタイプを説明します。ここに示すELは、WebCenter Portalで構築されたポータルとJDeveloperで構築されたPortal Frameworkアプリケーションの両方に適用されます。

これらのELの使用方法の詳細は、第74.19項「WebCenter Portal偽装ELおよびAPIの使用」を参照してください。

表F-11 偽装に関連するEL式

機能

#{WCSecurityContext.impersonationConfigured}

現在のドメインで偽装が有効化されているかどうかを返します。

このELは、偽装セッションの終了が早すぎることが原因でエラーが発生したのかどうかを判別したり、セッションが終了したことを示す追加のインジケータを提供する場合に便利です。

#{WCSecurityContext.userInImpersonationSession}

現在のユーザーが偽装セッションにあるのかどうかを返します。

このELを使用して、コンテンツを保護し、偽装セッション中はアクセスできないようにレンダリングできます。たとえば、ページ上の管理タスク・フローのレンダリングされた属性をこのELにマップして、ユーザーが偽装セッションでタスク・フローを表示しない場合、タスク・フローのレンダリングのみを行うことができます。

#{WCSecurityContext.currentImpersonator}

このELを使用すると、ページ・テンプレートを変更して偽装者を表示したり、特定の偽装者のみにアクセスできるようにコンテンツをレンダリングできます。


F.13 コンポーザに関連するEL式

表F-12は、コンポーザに関連するEL式を示しています。これらのEL式は、WebCenter Portalを使用して構築されたポータルとOracle JDeveloperで構築されたPortal Frameworkアプリケーションの両方で使用できます。

表F-12 コンポーザに関連するEL式

機能

#{composerContext.inEditMode}

現在のページが表示モードなのか編集モードなのかを決定します。

例:

<af:outputText id="ot1"
  value="#{composerContext.inEditMode ne
  true ? 'View mode' : 'Edit mode'} />

この例は、ページが表示モードの場合、ADF FacesのoutputTextコンポーネントがView modeを返し、ページが編集モードの場合はEdit modeを返すことを示しています。

#{changeModeBean.inEditMode}

childCreation属性は、ポップアップ・ダイアログの子をコンポーザで表示できるかどうかを決定します。デフォルトでは、この属性はdeferredに設定されており、ポップアップ・ダイアログの子を表示する際に使用できます。値をimmediateに設定すると、ポップアップ・ダイアログの子を表示できます。

例:

<af:popup childCreation="#{changeModeBean.inEditMode
  ? 'immediate' : 'deferred'}" />

childrenCreation属性をimmediateに設定すると、パフォーマンスに影響を与えます。ページ上でポップアップを使用する必要がない場合には、deferredのデフォルト設定を使用するとCPUのペナルティと不要なメモリーの使用を避けることができます。ポップアップは非モーダルで表示されるため、アプリケーションではエラーなしでそのファクトを処理できる必要があります。


F.13.1 例: コンポーザに対するEL式の使用

この項では、表示モードと編集モードで異なるページを表示するためのEL式の使用例を示します。自分のページのうちの1つ(Page1)について、表示モードでは別のページ(Page2)を表示することを考えてみます。ただし、Page1の編集中は、Page2ではなく、www.example.comというWebサイトを表示させます。次の形式のELを使用できます。

#{ composerContext.inEditMode ? 'http://www.example.com' : 'url_of_Page2' }

このELにより、ページが編集モードのときは指定されたWebサイトが表示され、表示モードのときにはPage2が表示されます。

次の手順は、ページ・モードによって異なるページを表示する方法を示しています。

  1. ページ・エディタ(コンポーザ)でPage1という名前のページを開きます。

  2. デザイン・ビューで、リソース・カタログの「Web開発」をクリックします。

  3. 「Webページ」の横に表示されている「追加」をクリックします。

  4. 新しく追加されたWebページの「編集」アイコンをクリックします。

  5. 「コンポーネント・プロパティ」ダイアログの「表示オプション」タブで、「ソース」フィールドに、次の形式で値を入力します。

    #{ composerContext.inEditMode ? 'website_url' : 'url_of_Page2' }
    
  6. 「OK」をクリックします。

    コンポーザでは、指定したWebサイトがPage1に表示されます。ページを保存して閉じます。Page1にはPage2が表示されます。

F.14 WebCenter Portalのみに関連するEL式

この項には次のサブセクションが含まれます:

F.14.1 ポータル問合せでの自由形式のJPQL WHERE句およびSORT句の非サポート

JPQL WHERE句に基づいてポータルを問い合せるためにEL式を使用していた場合、WebCenter Portalでは、自由形式のJPQL WHERE句がサポートされないことを認識する必要があります。かわりに、構造化されたWHERE句を使用します。自由形式のSORT句もサポートされません。かわりに、構造化された方法でポータル問合せのソート基準を指定します。

たとえば、ポータル問合せに対してWHERE句を形成するために、次の構文を使用していたとします。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].whereClause['sp.keywords like \'forquery%\' and not 
(sp.discoverable is null or sp.discoverable =  \'N\')'].listSpaces}

これからは、WHERE句を形成するには、次の構文を使用する必要があります。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].where[wCond['sp.keywords']['like']['forquery']['and'][wCond['sp.discoverable']
['is']['null']['or'][wCond['sp.discoverable']['=']['N']]['not']]].listSpaces}

ここで:

  • wCondはアトミック条件で、wCond[p][op][v]と表すことができます。

    ここで:

    • pはポータル属性です(WcSpaceHeaderのフィールド。下記の箇条書きリストを参照)。

    • opは、JPQL比較演算子の制限されたセット('=', 'like', '!=', '<', '>', '<=', '>=', 'is')のいずれかです。

    • vは、演算子opによって解釈が決まる文字列です。

      この演算子がisの場合、vには文字列'null'または'not null'を設定でき、JPQLでそれぞれnullまたは非nullであることをチェックされる属性として、条件が認識されます。この演算子がそれ以外である場合、vはリテラルとして解釈され、条件はリテラル値と比較される属性として認識されます。

    WHERE句では、次のようなWcSpaceHeaderで定義されるフィールドのいずれかを使用できます。

    • closed

    • createDate

    • createdBy

    • description

    • discoverable

    • displayName

    • keywords

    • icon

    • logo

    • lastUpdateDate

    • selfSubEnabled

    • rssEnabled

    • spaceGuid

    • spaceId

    • spaceOffline

    • spacePublic

    • spacesType

    • spacesUser

    • updatedBy

    • version

    • parentGuid

    • securityParentGuid

    • ancestorPath

    • seeded

    • groupSpaceMemCount

  • spは、ポータルWcSpaceHeaderのJPAエンティティを表しています。

    たとえば、ユーザー名がmontyで始まり、自己サブスクリプションが有効になっているユーザーによって作成されたすべてのポータルに対するフィルタを作成するには、次の条件を使用できます。

    sp.createdBy like 'monty%' and not (sp.selfSubEnabled is null or sp.selfSubEnabled = 'N')
    
  • andornot (wCondとともに使用)は、条件のタイプです。

    ここで:

    • andは、2つの条件の論理積を表します。論理積の条件は、cond1['and'][cond2]と表すことができます。ここで、cond1cond2は、結合する2つの条件を表す式です。

    • orは、分離条件を表します。分離条件は、cond1['or'][cond2]と表すことができます。ここで、cond1cond2は、分離する2つの条件を表す式です。

    • notは、否定条件を表します。否定条件は、cond['not']と表すことができます。ここで、condは、結合する条件を表す式です。

たとえば、次のELは、ユーザー名がmontyで始まり、自己サブスクリプションが有効になっているユーザーによって作成されたすべてのポータル(現在のユーザーがアクセス可能なポータル)のリストを返します。

#{spaceContext.spacesQuery.unionOf.ALL_QUERIABLE.where[wCond['sp.createdBy']
['like']['monty%'] ['and'] [wCond['sp.selfSubEnabled']['is']['null'] ['or'] [wCond['sp.selfSubEnabled']['=']['N']] ['not'] ] ].listSpaces}

次に、ポータル問合せに対してSORT条件を指定するために、次の構文を使用していたとします。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].sortCriteria
['sp.discoverabledesc, sp.keywords'].listSpaces}

これからは、ポータル問合せに対してSORT条件を指定するには、次の構文を使用する必要があります。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].sort['sp.discoverable']
['desc'].sort['sp.keywords']['asc'].listSpaces}

ここで:

  • spは、ポータルWcSpaceHeaderのJPAエンティティを表しています(WcSpaceHeaderで定義されるフィールドは、前述の箇条書きリストを参照)。

  • descascは、それぞれ降順と昇順のソート順序を定義します。

たとえば、次の問合せは、ユーザーがアクセス可能なポータルのリストを返し、フィールドdiscoverableおよびlastUpdateDateを基準に結果セットをソートします。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].sort['sp.discoverable']
['asc'].sort['sp.lastUpdateDate']['desc'].listSpaces}

Oracleでは、既存の自由形式のJPQL WHERE句とSORT句をすべて新しい構文に変換することを強くお薦めします。

なんらかの理由で既存の構文を維持する必要がある場合は、WebCenter Portal管理者が、webcenter-config.xml.xmlファイル内で次のグローバル・フラグを設定することで、自由形式のJPQLに対するサポートを明示的に有効にする必要があります。

oracle.webcenter.spaces.query.DIRECT_JPQL_CLAUSE_SUPPORTED

注意:

webcenter-config.xml.xmlファイルは、webcenter-config.xmlのカスタマイズ・ドキュメントです。


従来の自由形式のWHERE句とSORT句のサポートを継続するには、このフラグをtrueに設定します。このオプションをtrueに設定すると、WebCenter Portalログ・ファイルには警告が格納されます。

webcenter-config.xml.xmlでこのフラグを設定するには:

  1. MDSから最新のwebcenter-config.xml.xmlをエクスポートします。

    例:

    exportMetadata(application='webcenter', server='WC_Spaces', toLocation='/tmp/mydata',docs='/oracle/webcenter/webcenterapp/metadata/mdssys/cust/site/webcenter/webcenter-config.xml.xml')
    
  2. テキスト・エディタでファイルを開き、必要に応じて設定を変更します。

    例:

    <mds:insert parent="webcenter(xmlns(webcenter=http://
       xmlns.oracle.com/webcenter/webcenterapp))/webcenter:custom-attributes" 
       position="last">      <attribute name=
             "oracle.webcenter.spaces.query.DIRECT_JPQL_CLAUSE_SUPPORTED" 
             xmlns="http://xmlns.oracle.com/webcenter/webcenterapp">
                <description/>
                <type>java.lang.String</type>
                <value>true</value>
                <visible/>
          </attribute>
    </mds:insert>
    
  3. webcenter-config.xml.xmlを保存して閉じます。

  4. 更新後のwebcenter-config.xml.xmlファイルをWebCenter Portalにインポートします。

    例:

    importMetadata(application='webcenter', server='WC_Spaces', fromLocation='/tmp/mydata', docs='/oracle/webcenter/webcenterapp/metadata/mdssys/cust/site/webcenter/webcenter-config.xml.xml')
    

F.14.2 式エディタのシード済の式

式エディタで、「値の選択」というオプションを選択すると、ダイアログ内のテキスト・ボックスにシード済のEL式を移入できます。まず式のカテゴリを選択し、次に式から返される情報のタイプを選択します。選択内容に関連するELが、ダイアログ下部のテキスト・ボックスに表示されます(図F-7)。

図F-7 式エディタの「値の選択」の下のオプション

図F-7の説明が続きます
「図F-7 式エディタの「値の選択」の下のオプション」の説明

この項は、カテゴリごとの項に分類されます。各項では、そのカテゴリに関連付けられるELをリストし、説明しています。

この項には次のサブセクションが含まれます:

F.14.2.1 アプリケーション情報のシード済EL

アプリケーション情報のシード済EL式は、WebCenter Portalに関連する値を返します。たとえば、#{WCAppContext.application.applicationConfig.title}という式は、WebCenter Portal管理の「一般」ページで指定されるアプリケーション名を返します。


関連項目:

アプリケーションに関連するその他のEL式は、第F.14.3項「WebCenter Portal情報に関連するEL式」を参照してください。


表F-13は、「アプリケーション情報」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。

表F-13 「アプリケーション情報」のシード済EL式

オプション 戻り値の例

現在のスコープ

#{serviceCtx.scope}

Scope[name=standards, guid=sa78185d3_9d65_49ab_ac1d_4809380d0b30]

現在のページ・テンプレート・スコープ

#{WCAppContext.currentScope}

Scope[name=standards, guid=sa78185d3_9d65_49ab_ac1d_4809380d0b30]

以前に設定されたページ・テンプレート

#{WCAppContext.previouslySetPageTemplate}

Fusion Side Navigation

アプリケーション

#{WCAppContext.application}

oracle.webcenter.webcenterapp.internal.view.shell.WCApplication

アプリケーションURL

#{WCAppContext.applicationURL}

http://host:port/webcenter

現在のWebCenter Portal URI

#{WCAppContext.currentWebCenterURI}

/oracle/webcenter/page/scopedMD/GUID/businessRolePages/Page3.jspx?wc.contextURL=%2Fspaces

アプリケーション構成

#{WCAppContext.application.applicationConfig}

oracle.webcenter.webcenterapp.beans.WebCenterMetadataImpl@123db9d

アプリケーション構成タイトル

#{WCAppContext.application.applicationConfig.title}

WebCenter

アプリケーション構成ロゴ

#{WCAppContext.application.applicationConfig.logo}

/oracle/webcenter/webcenterapp/metadata/images/logo.gif

アプリケーション構成ヘルプ・ページ

#{WCAppContext.application.applicationConfig.helpPage}

/webcenterhelp/spaces?topic=welcome_main

アプリケーション構成著作権メッセージ・カスタム値

#{WCAppContext.application.applicationConfig.copyrightMessage.customValue}

http://www.example.com/html/copyright.html

アプリケーション構成プライバシ・ポリシーURL

#{WCAppContext.application.applicationConfig.privacyPolicyUrl}

http://www.example.com/html/privacy.html

アプリケーション構成スキン

#{WCAppContext.application.applicationConfig.skin}

webcenterfx


たとえば、現在のページのURLをコピーおよび共有できるようにするリンクをポータルのすべてのページに表示する場合を考えてみます。HTMLマークアップ・アイテムをページ・テンプレートに追加して、ページURLを返すELを追加できます。

次の手順は、ELを使用してページURLを取得する方法を示しています。

  1. カスタム・ページ・テンプレートを編集モードで開きます。

  2. デザイン・ビューで、リソース・カタログの「Web開発」をクリックします。

  3. 「HTMLマークアップ」の横の「追加」をクリックします。

  4. 新しく追加されたHTMLマークアップの「編集」アイコンをクリックします。

  5. 「コンポーネント・プロパティ」ダイアログの「表示オプション」タブで、「値」フィールドに、次のELを入力します。

    <a href="javascript:{
        var returnvalue = prompt( '#{pageDocBean.title}
    URL','#{WCAppContext.applicationURL}/faces#{WCAppContext.currentWebCenterURI}');
    }">Share Link</a>
    
  6. 「OK」をクリックします。

  7. ページ・テンプレートをポータルに適用します。

F.14.2.2 アセット情報のシード済EL

アセット情報のシード済EL式は、WebCenter Portalリソース(テンプレート、スタイル、リソース・カタログなど)に関連する値を返します。たとえば、#{srmContext.id['ResourceID'].singleResult}という式は、指定されたGUIDのアセットを返します。


関連項目:

アセットに関連するその他のEL式は、第F.14.4項「アセットに関連するEL式」を参照してください。


表F-14は、「アセット情報」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。

表F-14 「アセット情報」のシード済EL式

オプション 戻り値の例

アセットID

#{srmContext[wCond['id']['like']['ResourceID']].singleResult}

id:gsr3396194a_3a72_44d6_90b4_57fd6efe4ff7 resourceScope:Scope[name=defaultScope, guid=s8bba98ff_4cbb_40b8_beee_296c916a23ed] resourceType:siteTemplate serviceId:oracle.webcenter.siteresources.sitetemplate category: displayName:Fusion Side Navigation displayNameKey:SITE_TEMPLATE_FUS_SIDE_STRETCH_NAV_DN description:Stretching Page Layout with Side Navigation. Use Fusion FX Skin. descriptionKey:SITE_TEMPLATE_FUS_SIDE_STRETCH_NAV_DESC contentDirectory:/oracle/webcenter/siteresources/shared metadataFile: jspx:/oracle/webcenter/webcenterapp/view/templates/WCSiteTemplateSideNavStretch.jspx pageDef:/oracle/webcenter/webcenterapp/bindings/pageDefs/oracle_webcenter_webcenterapp_view_templates_WCSiteTemplateSideNavStretchPageDef.xml iconURI: excludeFrom: usesCustomSecurity:false visible:TRUE seeded:true createdBy:system createdDate:Fri Jul 02 05:44:19 PDT 2010 modifiedBy:system resourceBundle:oracle.webcenter.sitetemplate.view.resource.SiteTemplateBundle modifiedDate:Fri Jul 02 05:44:19 PDT 2010 logoUrl:/adf/webcenter/srm_dflt_logo_qualifier.png attributes:[]

表示名

#{srmContext[wCond['displayName']['like']['DisplayName']].singleResult}

戻り値の例は、「アセットID」を参照してください。

説明

#{srmContext[wCond['description']['like']['Description']].singleResult}

戻り値の例は、「アセットID」を参照してください。

作成日

#{srmContext[wCond['createdDate']['like']['CreationDate']].singleResult}

戻り値の例は、「アセットID」を参照してください。

変更者

#{srmContext[wCond['modifiedBy']['like']['UserName']].singleResult}

戻り値の例は、「アセットID」を参照してください。

更新日

#{srmContext[wCond['modifiedDate']['like']['ModifiedDate']].singleResult}

戻り値の例は、「アセットID」を参照してください。

アセット・スコープ

#{srmContext[wCond['resourceScope']['like']['ResourceScope']].singleResult}

戻り値の例は、「アセットID」を参照してください。


F.14.2.3 ページ情報のシード済EL

ページ情報のシード済EL式は、WebCenter Portalページに関連する値を返します。たとえば、#{pageDocBean.createdBy}という式は、現在のページの作成者のユーザー名を返します。

表F-15は、「ページ情報」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。

表F-15 「ページ情報」のシード済EL式

オプション 戻り値の例

役職

#{pageDocBean.title}

Welcome Page (BRP)

作成者

#{pageDocBean.createdBy}

j.doe

作成日文字列

#{pageDocBean.createDateString}

2010-11-17T13:27:52

最終更新者

#{pageDocBean.lastUpdatedBy}

j.smith

最終更新日文字列

#{pageDocBean.lastUpdateDateString}

2010-11-17T13:27:52

ページ・パス

#{pageDocBean.pagePath}

/oracle/webcenter/page/scopedMD/GUID/businessRolePages/Page3.jspx

名前

#{pageDocBean.name}

Page3.jspx

UI CSSスタイル

#{pageDocBean.UICSSStyle}

WCSchemeCustom

UIスキームの背景イメージ

#{pageDocBean.UISchemeBGImage}

#{facesContext.externalContext.requestContextPath}/adf/oracle/webcenter/page/images/clouds.png

UIスキームの背景色文字列

#{pageDocBean.UISchemeBGColorString}

null

ページ権限

#{pageDocBean.pagePermission}

oracle.webcenter.page.model.security.CustomPagePermission

ページ・セキュリティ・ターゲット

#{pageDocBean.pageSecurityTarget}

oracle_webcenter_page_scopedMD_sa78185d3_9d65_49ab_ac1d_4809380d0b30_COIHomePageDef


F.14.2.4 ページ・パラメータのシード済EL

ページ・パラメータのシード済EL式は、WebCenter Portalページ・パラメータに関連する値を返します。エディタには、現在のページで定義されているすべてのパラメータが表示されます。パラメータが定義されていない場合、「ページ・パラメータ」カテゴリは使用できません。

たとえば、シード済のページ・スタイル「3列」には、5つのシード済パラメータが表示されます(表F-16を参照)。widthパラメータは、各列に割り当てられる、幅全体の割合(パーセント)を表します。showパラメータは、ページのヘッダーとフッターがレンダリングされるかどうかを指定します。シード済ページ・スタイルの「空白」「ホーム・ページ」「左を狭く」「右を狭く」は、すべて同じシード済ページ・パラメータを提供します(表F-16を参照)。さらに、どのページも独自のカスタム・ページ・パラメータを持つことができます。

シード済でもカスタムでも、使用可能なページ・パラメータは、「ページ・パラメータ」カテゴリの式エディタに表示されます。


関連項目:

ページ・パラメータの作成および使用方法の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のコンポーネントとページ・パラメータの作成に関する項を参照してください。


表F-16は、「3列」、「空白」、「ホーム・ページ」、「左を狭く」、「右を狭く」のスタイルに基づくページに対して、「ページ・パラメータ」カテゴリで使用できるEL式をリストしています。それぞれの戻り値のタイプも例示しています。

表F-16 「ページ・パラメータ」のシード済EL式

オプション 戻り値の例

leftWidth

#{bindings.leftWidth}

25%

centerWidth

#{bindings.centerWidth}

50%

rightWidth

#{bindings.rightWidth}

25%

showHeader

#{bindings.showHeader}

false

showFooter

#{bindings.showFooter}

false


F.14.2.5 ポータル情報のシード済EL

ポータル情報のシード済EL式は、(ホーム・ポータル以外の)ポータルに関連する値を返します。たとえば、#{spaceContext.space['portalName'].children}という式は、名前指定された親ポータルの下のサブポータルのリストを返します。


関連項目:

ポータルに関連するその他のEL式は、第F.14.5項「特定のポータルに関連するEL式」を参照してください。


表F-17は、「ポータル情報」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。


注意:

表F-17にリストされているEL式は、ホーム・ポータル以外のポータルのコンテキストのみで使用してください。


表F-17 「ポータル情報」のシード済EL式

オプション 戻り値の例

NamedPortal

#{spaceContext.space['portalName']}

oracle.webcenter.spaces.internal.model.SpaceImpl@15fc839

CurrentPortal

#{spaceContext.currentSpace}

oracle.webcenter.spaces.internal.model.SpaceImpl@d5e197

CurrentPortal名

#{spaceContext.currentSpaceName}

standards

NamedPortalメタデータ・パス

#{spaceContext.space['portalName'].metadataPath}

/oracle/webcenter/space/metadata/spaces/portalName/space.xml

CurrentPortalメタデータ・パス

#{spaceContext.currentSpace.metadataPath}

/oracle/webcenter/space/metadata/spaces/standards/space.xml

NamedPortalメタデータ

#{spaceContext.space['portalName'].metadata}

oracle.webcenter.spaces.beans.SpaceMetadataImpl@1d7320a

CurrentPortalメタデータ

#{spaceContext.currentSpace.metadata}

oracle.webcenter.spaces.beans.SpaceMetadataImpl@1096c64

NamedPortalメタデータ表示名

#{spaceContext.space['portalName'].metadata.displayName}

Standards

CurrentPortalメタデータ表示名

#{spaceContext.currentSpace.GSMetadata.displayName}

Sales

NamedPortalメタデータ・アイコン

#{WCPrepareImageURL[spaceContext.space['portalName'].metadata.icon]['']}

/webcenter-spaces-resources/oracle/webcenter/space/metadata/spacetemplate/PortalSite/images/portal_icon.png

CurrentPortalメタデータ・アイコン

#{WCPrepareImageURL[spaceContext.currentSpace.metadata.icon]['']}

/webcenter-spaces-resources/oracle/webcenter/space/metadata/spaces/Test_Space/images/wc_prj_icon.png

NamedPortalメタデータ説明

#{spaceContext.space['portalName'].metadata.description}

Central point for all standards, templates, and stylesheets for company collateral

CurrentPortalメタデータ説明

#{spaceContext.currentSpace.GSMetadata.description}

Sales Force Team Site

NamedPortalメタデータ作成日

#{spaceContext.space['portalName'].metadata.creationDate}

java.util.GregorianCalendar[time=1290103432242,areFieldsSet=true,areAllFieldsSet=false,lenient=false,zone=java.util.SimpleTimeZone[id=,offset=-28800000,dstSavings=3600000,useDaylight=false,startYear=0,
startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=0,endMonth=0,endDay=0,endDayOfWeek=0,endTime=0,endTimeMode=0],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,
YEAR=2010,MONTH=10,WEEK_OF_YEAR=?,WEEK_OF_MONTH=?,DAY_OF_MONTH=18,DAY_OF_YEAR=?,DAY_OF_WEEK=?,DAY_OF_WEEK_IN_MONTH=?,AM_PM=0,HOUR=10,HOUR_OF_DAY=10,MINUTE=3,SECOND=52,MILLISECOND=242,ZONE_OFFSET=?,DST_OFFSET=?]

CurrentPortalメタデータ作成日

#{spaceContext.currentSpace.metadata.creationDate}

java.util.GregorianCalendar[time=1290103432242,areFieldsSet=true,areAllFieldsSet=false,lenient=false,zone=java.util.SimpleTimeZone[id=,offset=-28800000,dstSavings=3600000,useDaylight=false,startYear=0,
startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=0,endMonth=0,endDay=0,endDayOfWeek=0,endTime=0,endTimeMode=0],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2010,MONTH=10,
WEEK_OF_YEAR=?,WEEK_OF_MONTH=?,DAY_OF_MONTH=18,DAY_OF_YEAR=?,DAY_OF_WEEK=?,DAY_OF_WEEK_IN_MONTH=?,AM_PM=0,HOUR=10,HOUR_OF_DAY=10,MINUTE=3,SECOND=52,MILLISECOND=242,ZONE_OFFSET=?,DST_OFFSET=?]

NamedPortalメタデータ作成者

#{spaceContext.space['portalName'].metadata.createdBy}

j.doe

NamedPortalメタデータ・キーワード

#{spaceContext.space['portalName'].metadata.keywords}

standards templates style sheets collateral

CurrentPortalメタデータ・キーワード

#{spaceContext.currentSpace.metadata.keywords}

sales salesReports salesNews salesTeam

NamedPortalメタデータ・オフライン

#{spaceContext.space['portalName'].metadata.offline}

指定されたポータルがオフラインかどうかによって、falseまたはtrue

CurrentPortalメタデータ・オフライン

#{spaceContext.currentSpace.metadata.offline}

現在のポータルがオフラインかどうかによって、falseまたはtrue

NamedPortalメタデータ・クローズ

#{spaceContext.space['portalName'].metadata.offline}

指定されたポータルが閉じているかどうかによって、falseまたはtrue

CurrentPortalメタデータ・クローズ

#{spaceContext.currentSpace.metadata.closed}

現在のポータルが閉じているかどうかによって、falseまたはtrue

NamedPortalメタデータ自己登録

#{spaceContext.space['portalName'].metadata.selfRegistration}

指定されたポータルで自己登録が有効かどうかによって、falseまたはtrue

CurrentPortalメタデータ自己登録

#{spaceContext.currentSpace.metadata.selfRegistration}

現在のポータルで自己登録が有効かどうかによって、falseまたはtrue

NamedPortalメタデータ検出可能

#{spaceContext.space['portalName'].metadata.discoverable}

指定されたポータルが検出可能かどうかによって、falseまたはtrue

CurrentPortalメタデータ検出可能

#{spaceContext.currentSpace.metadata.discoverable}

現在のポータルが検出可能かどうかによって、falseまたはtrue

NamedPortalメタデータ公開RSS

#{spaceContext.space['portalName'].metadata.publishRSS}

指定されたポータルがRSSリーダーで公開可能どうかによって、falseまたはtrue

CurrentPortalメタデータ公開RSS

#{spaceContext.currentSpace.metadata.publishRSS}

現在のポータルがRSSリーダーで公開可能どうかによって、falseまたはtrue

NamedPortal配信リスト

#{spaceContext.space['portalName'].distributionList}

standardsGroup@myCompany.com

CurrentPortal配信リスト

#{spaceContext.currentSpace.distributionList}

salesTeam@myCompany.com

NamedPortalメタデータ・カスタム属性

#{spaceContext.space['portalName'].metadata.customAttributes['attributeName']}

名前付きカスタム属性に入力される値が返されます

CurrentPortalメタデータ・カスタム属性

#{spaceContext.currentSpace.metadata.customAttributes['attributeName']}

名前付きカスタム属性に入力される値が返されます

CurrentPortalメタデータ・ロゴ

#{WCPrepareImageURL[spaceContext.currentSpace.metadata.logo]['']}

/webcenter-spaces-resources/oracle/webcenter/space/metadata/spacetemplate/PortalSite/images/portal_logo.png

CurrentPortalロール - 進行役

#{WCSecurityContext.userInScopedRole['Moderator']}

現在のスコープ内のいずれかのユーザーにModeratorロールが割り当てられているかどうかによって、falseまたはtrue

CurrentPortalロール - 参加者

#{WCSecurityContext.userInScopedRole['Participant']}

現在のスコープ内のいずれかのユーザーにParticipantロールが割り当てられているかどうかによって、falseまたはtrue

CurrentPortalロール - 閲覧者

#{WCSecurityContext.userInScopedRole['Viewer']}

現在のスコープ内のいずれかのユーザーにViewerロールが割り当てられているかどうかによって、falseまたはtrue

CurrentPortalロール - カスタム

#{WCSecurityContext.userInScopedRole['CustomRole']}

現在のスコープ内のいずれかのユーザーに名前付きカスタム・ロールが割り当てられているかどうかによって、falseまたはtrue

NamedPortal子

#{spaceContext.space['portalName'].children}

[oracle.webcenter.spaces.internal.model.SpaceImpl@5705f4, oracle.webcenter.spaces.internal.model.SpaceImpl@147d658]

注意: 角カッコ([])はセットを示します。

CurrentPortal子

#{spaceContext.currentSpace.children}

[oracle.webcenter.spaces.internal.model.SpaceImpl@5705f4, oracle.webcenter.spaces.internal.model.SpaceImpl@147d658]

注意: 角カッコ([])はセットを示します。

NamedPortal親

#{spaceContext.space['portalName'].parent}

oracle.webcenter.spaces.internal.model.SpaceImpl@15fc839

CurrentPortal親

#{spaceContext.currentSpace.parent}

oracle.webcenter.spaces.internal.model.SpaceImpl@15fc839

NamedPortalセキュリティ親

#{spaceContext.space['portalName'].securityParent}

oracle.webcenter.spaces.internal.model.SpaceImpl@1392793

CurrentPortalセキュリティ親

#{spaceContext.currentSpace.securityParent}

oracle.webcenter.spaces.internal.model.SpaceImpl@1392793

すべての表示可能なルート・レベル・スペース

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE,DISCOVERABLE,PUBLIC_ACCESSIBLE,ALLUSER_ACCESSIBLE,USER_JOINED,USER_MODERATED'].shape['ROOT_LEVEL']}

oracle.webcenter.spaces.query.SpacesQueryParameters@ae34c8

指定された親ポータルGUIDのすべての子孫ポータル

#{spaceContext.spacesQuery.parentSpaceGuid['portalGuid'].shape['RECURSIVE_FLATTENED']}

oracle.webcenter.spaces.query.SpacesQueryParameters@4da22f

指定された親ポータル名の直近のサブ・ポータル

#{spaceContext.spacesQuery.parentSpaceName['portalGuid'].shape['ROOT_LEVEL']}

oracle.webcenter.spaces.query.SpacesQueryParameters@1089971

指定されたポータル名に一致するポータルのリスト

#{spaceContext.spacesQuery.containingNames['portal1, portal2,portal3']}

oracle.webcenter.spaces.query.SpacesQueryParameters@68e467

指定されたポータルGUIDに一致するポータルのリスト

#{spaceContext.spacesQuery.containingGuids['portalGuid1, portalGuid2']}

oracle.webcenter.spaces.query.SpacesQueryParameters@1c56009

基準に基づいてソートされたポータルのリスト

#{spaceContext.spacesQuery.unionOf.ALL_QUERIABLE.sort['sp.lastUpdateDate']['desc']}

oracle.webcenter.spaces.query.SpacesQueryParameters@6c3def

検索パターンに基づいたポータルのリスト

#{spaceContext.spacesQuery.unionOf.ALL_QUERIABLE.search['searchKeyword']}

oracle.webcenter.spaces.query.SpacesQueryParameters@19b2cf3

ページ・サイズが制限されたポータルのリスト

#{spaceContext.spacesQuery.unionOf.USER_JOINED.itemsPerPage[n].pageNumber[n]}

oracle.webcenter.spaces.query.SpacesQueryParameters@4f8818

WHERE句に一致するポータルのリスト

#{spaceContext.spacesQuery.unionOf.USER_JOINED.where[wCond['sp.createdBy']['=']['userName']]}

oracle.webcenter.spaces.query.SpacesQueryParameters@1ba816d


F.14.2.6 ポータル・ページ情報のシード済パス

「ポータル・ページ情報」での選択内容は、EL式ではなく、様々なアプリケーション・ページへのディレクトリ・パスです。たとえば、これらを使用して、指定されたページへのナビゲーション情報を設定したりします。

表F-18は、「ポータル・ページ情報」カテゴリで使用できるシード済ディレクトリ・パスをリストし、返される値のタイプの例を示しています。ドロップダウン・リスト内の値の数は、ユーザーが使用するテンプレートや作成するページによって異なります。

表F-18 「ポータル・ページ情報」のシード済パス

オプション パス 宛先

PortalSiteHome.jspx

/faces/oracle/webcenter/page/scopedMD/se2dff4fb_202a_4f4c_b56d_c7cf59ad1c04/PortalSiteHome.jspx

現在のポータルのホーム・ページへのパス

GroupSpaceDocLibMainView.jspx

/faces/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/businessRolePages/GroupSpaceDocLibMainView.jspx

現在のポータルの「ドキュメント」ページへのパス

ForumMainView.jspx

/faces/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/businessRolePages/ForumMainView.jspx

現在のポータルの「ディスカッション」ページへのパス

AnnouncementsMainView.jspx

/faces/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/businessRolePages/AnnouncementsMainView.jspx

現在のポータルの「お知らせ」ページへのパス

ListsMainView.jspx

/faces/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/businessRolePages/ListsMainView.jspx

現在のポータルの「リスト」ページへのパス

EventsMainView.jspx

/faces/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/businessRolePages/EventsMainView.jspx

現在のポータルの「イベント」ページへのパス

GroupSpaceActivityStreamMainView.jspx

/faces/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/businessRolePages/GroupSpaceActivityStreamMainView.jspx

現在のポータルの「アクティビティ・ストリーム」ページへのパス


F.14.2.7 システムのシード済EL

システムのシード済EL式は、現在のユーザーのユーザー名や現在のユーザーの指定されたロケールなど、システム設定に関連する値を返します。たとえば、#{securityContext.userName}という式は、現在ログインしているユーザーの名前を返します。たとえば、ユーザーj.doeがこの式の使用されているページを表示すると、j.doeのビューでの戻り値はj.doeになります。ユーザーj.smithが同じページを表示すると、j.smithのビューでの戻り値はj.smithになります。


関連項目:

その他の実用的なEL式の詳細は、第F.14.8項「実用的なEL式」を参照してください。


表F-19は、「システム」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。

表F-19 「システム」のシード済EL式

オプション 戻り値の例

ユーザー

#{securityContext.userName}

現在のユーザーのユーザー名

ロケール

#{facesContext.externalContext.requestLocale}

現在のユーザーの指定されたロケール

これは、アプリケーション、ポータルレベルの設定、ユーザー・プリファレンスのいずれか優先度の高いものから取得されます。

例:

en_US

F.14.2.8 ユーザー情報のシード済EL

ユーザー情報のシード済EL式は、特定のユーザーのプロファイルに関連する値を返します。たとえば、#{webCenterProfile[securityContext.userName].description}という式は、現在のユーザーのプロファイルの「自己紹介」属性のコンテンツを返します。


関連項目:

その他のユーザー関連の式は、第F.10項「ピープル・コネクションに関連するEL」を参照してください。


表F-20は、「ユーザー情報」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。

表F-20 「ユーザー情報」のシード済EL式

オプション 戻り値の例

自己紹介

#{webCenterProfile[securityContext.userName].description}

現在のユーザーのプロファイルの「自己紹介」属性のコンテンツを返します

ユーザー名

#{webCenterProfile[securityContext.userName].userName}

現在のユーザーのプロファイルで指定されたユーザー名

これを現在のユーザーの表示名と比較します

#{webCenterProfile[securityContext.userName].firstName}

現在のユーザーの名。

ミドル・ネーム

#{webCenterProfile[securityContext.userName].middleName}

現在のユーザーのミドルネーム。

#{webCenterProfile[securityContext.userName].lastName}

現在のユーザーの姓

使用されるイニシャル

#{webCenterProfile[securityContext.userName].initials}

現在のユーザーのイニシャル。

表示名

#{webCenterProfile[securityContext.userName].displayName}

現在のユーザーの表示名。

これを現在のユーザーのユーザー名と比較します

電子メール

#{webCenterProfile[securityContext.userName].businessEmail}

現在のユーザーの業務用電子メール・アドレス。

部門

#{webCenterProfile[securityContext.userName].department}

現在のユーザーの部門

役職/職種

#{webCenterProfile[securityContext.userName].title}

現在のユーザーの役職または職種

マネージャ

#{webCenterProfile[securityContext.userName].managerDisplayName}

現在のユーザーのマネージャの表示名

タイムゾーン

#{webCenterProfile[securityContext.userName].timeZone}

現在のユーザーに関連付けられたタイムゾーン

従業員タイプ

#{webCenterProfile[securityContext.userName].employeeType}

現在のユーザーの従業員タイプ

従業員番号

#{webCenterProfile[securityContext.userName].employeeNumber}

現在のユーザーの社員番号。

優先言語コード

#{webCenterProfile[securityContext.userName].preferredLanguage}

現在のユーザーの優先言語。

組織

#{webCenterProfile[securityContext.userName].organization}

現在のユーザーが所属する会社組織

組織単位

#{webCenterProfile[securityContext.userName].organizationalUnit}

現在のユーザーが所属する会社組織の単位

専門

#{webCenterProfile[securityContext.userName].expertise}

現在のユーザーの専門(例: Application、system、database administration)

勤務先FAX

#{webCenterProfile[securityContext.userName].businessFax}

現在のユーザーの業務用FAX番号。

勤務先携帯電話番号

#{webCenterProfile[securityContext.userName].businessMobile}

現在のユーザーの勤務先の携帯電話番号

勤務先電話番号

#{webCenterProfile[securityContext.userName].businessPhone}

現在のユーザーの勤務先電話番号

勤務先ページャ番号

#{webCenterProfile[securityContext.userName].businessPager}

現在のユーザーの業務用ページャの番号。

勤務先番地

#{webCenterProfile[securityContext.userName].businessStreet}

現在のユーザーの勤務先の住所

勤務先市区町村

#{webCenterProfile[securityContext.userName].businessCity}

現在のユーザーの勤務先がある市区町村

勤務先都道府県

#{webCenterProfile[securityContext.userName].businessState}

現在のユーザーの勤務先がある都道府県

勤務先私書箱

#{webCenterProfile[securityContext.userName].businessPOBox}

現在のユーザーの勤務先の私書箱番号

勤務先郵便番号

#{webCenterProfile[securityContext.userName].businessPostalCode}

現在のユーザーの勤務先の郵便番号

勤務先国

#{webCenterProfile[securityContext.userName].businessCountry}

現在のユーザーの勤務先がある国

自宅の住所

#{webCenterProfile[securityContext.userName].homeAddress}

現在のユーザーの自宅住所

自宅電話番号

#{webCenterProfile[securityContext.userName].homePhone}

現在のユーザーの自宅の電話番号。

生年月日

#{webCenterProfile[securityContext.userName].dateofBirth}

現在のユーザーの生年月日

旧姓

#{webCenterProfile[securityContext.userName].maidenName}

現在のユーザーの旧姓

入社日

#{webCenterProfile[securityContext.userName].dateofHire}

現在のユーザーの入社日

名前接尾辞

#{webCenterProfile[securityContext.userName].nameSuffix}

現在のユーザーの名前に追加される役職や資格(例: MDEsqなど)

ワイヤレス・アカウント番号

#{webCenterProfile[securityContext.userName].wirelessAcctNumber}

現在のユーザーのワイヤレス・インターネット・アカウントのアカウント番号


F.14.2.9 WebCenterイベントのシード済EL

WebCenterイベントのシード済EL式は、ドキュメント関連のイベントに関する値を返します(選択されているドキュメント、ドキュメントの作成者、ドキュメントが最後に修正された日付など)。たとえば、#{wcEventContext.events.WebCenterResourceSelected.name}という式は、現在選択されているドキュメントの名前を返します。

表F-21は、「WebCenterイベント」カテゴリで使用できるシード済EL式をリストし、返される値のタイプの例を示しています。

表F-21 「WebCenterイベント」のシード済EL式

オプション 戻り値の例

選択したユーザー名

#{wcEventContext.events.WebCenterUserSelected.UserName}

現在選択されているユーザーのユーザー名

選択したドキュメント名

#{wcEventContext.events.WebCenterResourceSelected.name}

現在選択されているドキュメントの名前

選択したドキュメント作成者

#{wcEventContext.events.WebCenterResourceSelected.createdBy}

現在選択されているドキュメントの作成者の名前

選択したドキュメント最終変更者

#{wcEventContext.events.WebCenterResourceSelected.lastModifiedBy}

選択されているドキュメントが最後に変更された日付


F.14.3 WebCenter Portal情報に関連するEL式

表F-22は、WebCenter Portal情報に関連するEL式をリストし、それが提供する機能のタイプを説明します。

表F-22 WebCenter Portal情報に関連するEL式

機能

#{WCAppContext}

現在のWebリクエスト内で、すべてのWebCenter Portal関連情報へのアクセス・ポイントを提供するoracle.webcenter.webcenterapp.context.WCApplicationContextオブジェクト

#{WCAppContext.currentWebCenterURI}

現行のWebリクエストを表すURLを戻します。このURLの末尾には、リクエストのブックマーク設定可能なWebCenter Portal URLパラメータが追加されています(パラメータは順不同の場合があります)。

例:

http://www.example.com/webcenter/faces/oracle/webcenter/page/scopedMD/someguid/SomePage.jspx?wc.contextURL=/spaces/somename&wc.pageScope=1234

#{WCAppContext.application.applicationConfig}

WebCenter Portalからのメタデータのペイロードを含むoracle.webcenter.webcenterapp.beans.WebCenterType Bean。

#{WCAppContext.application.applicationConfig.title}

現在のWebCenter Portalアプリケーションの表示名(「WebCenter Portal管理」設定で構成)を返します。

デフォルトでは、WebCenter Portalを返します。

#{WCAppContext.application.applicationConfig.logo}

アプリケーション・ロゴが「WebCenter Portal管理」設定を介してアップロードされた場合、この式はアプリケーション・ロゴ・イメージへのURLを返します。

デフォルトでは、nullを戻します。

#{WCAppContext.application.applicationConfig.helpPage}

WebCenter Portalで使用するヘルプ・アプリケーションへのURL (「WebCenter Portal管理」設定で構成)を返します。

デフォルトでは、/webcenterhelp/spacesを戻します。

#{WCAppContext.application.applicationConfig.copyrightMessage.customValue}

著作権メッセージが「WebCenter Portal管理」設定によって構成されている場合は、アプリケーションの著作権メッセージを返します。

デフォルトでは、nullを戻します。

#{WCAppContext.application.applicationConfig.privacyPolicyUrl}

アプリケーションのプライバシ・ポリシーを含むドキュメントへのURL (「WebCenter Portal管理」設定で構成)を返します。

デフォルトでは、http://www.oracle.com/html/privacy.htmlを返します。

#{WCAppContext.application.applicationConfig.skin}

アプリケーションでページのレンダリングに使用するデフォルトのADF Facesスキン・ファミリの名前(「WebCenter Portal管理」設定で構成)を返します。

この式は、すべてのWebリクエストで使用できるとはかぎらないアプリケーション・レベルの設定のみを表します。たとえば、ユーザーがアプリケーションの「プリファレンス」を介してスキンをオーバーライドするように選択している場合、この式は正常に使用できません。

#{requestContext.skinFamily}

アプリケーション・レベルで構成されている要素や現在のユーザーのプリファレンス設定などに応じて、現在のWebリクエストで使用されるADF Facesスキン・ファミリの名前を返します。

#{adfFacesContext.skinFamily}と同じ値を返します。

このELは、WebCenter Portalを使用して構築されたポータルとOracle JDeveloperで構築されたPortal Frameworkアプリケーションの両方で使用できます。


F.14.4 アセットに関連するEL式

この項の式を使用して、アセットの問合せを行います。EL式によるアセットの問合せは、APIコールによるアセットの問合せと類似しています。すなわち、問合せパラメータは['property']['like']['value'] (propertyidresourceScopeなどのプロパティの名前、valueは属性の検索値)という形式で設定する必要があります。

問合せを実行すると、1件または複数件の結果が返される可能性があります。問合せデザイナは、どちらの結果を望むのかを決める必要があります。問合せデザイナは式で次の値のいずれかを使用して、1件の結果を返すのか、複数件の結果を返すのかを指定します。

  • singleResult: 1つのアセットを返します。一致するアセットが見つからない場合、nullを返します。

  • resultList: アセットのリストを返します。一致するアセットが見つからない場合、空のリストを返します。


注意:

式で使用されているsingleResultまたはresultListは、内部的には問合せのエンド・ポイントとして使用され、検出されるとすぐに問合せが実行されます。エンド・ポイント以降に何かが設定されていた場合、予想外の動作が発生する可能性があります。


次の例は、表示名にmyPageが含まれる、最初に見つけたページ・テンプレート・アセットを返します。

#{srmContext[wCond['resourceType']['like']['siteTemplate']]['and'][wCond['displayName']['like']['myPage']].singleResult} 

次の例は、ディレクトリresourceDirに存在し、説明にsampleDescが含まれるページ・テンプレート・アセットのリストを返します。

#{srmContext[wCond['resourceType']['like']['siteTemplate']]['and'][wCond['description']['like']['sampleDesc']]['and'][wCond['contentDirectory']['like']['resourceDir'].resultList} 

このクラスのプロパティには、このクラスの任意の属性が含まれます。たとえば、IdDisplayNameiconURIcontentDirectoryなどのプロパティが含まれます。

プロパティ値は、明示的な値として、またはそのタイプの値を返すEL式として、指定できます。たとえば、次の2つの問合せは同じ結果を返します。

#{srmContext[wCond['id']['like']['resourceId']].singleResult}

#{srmContext[wCond['id']['like']['spacesContext.currentSpace.uiMetadata.siteTemplateId']].singleResult}

EL式を使用する問合せでは、このクラスの任意のプロパティをproperty['value']という形式で、任意の順序で使用できます。たとえば、次の2つの問合せは同じ結果を返します。

#{srmContext[wCond['resourceScope']['like']['scopeName']]['and'][wCond['id]['like']['resourceId']].singleResult}

#{srmContext[wCond['id']['like']['resourceId']]['and'][wCond['resourceScope']['like']['scopeName']].singleResult}

表F-23は、アセットに関連するEL式をリストし、それぞれが提供する機能のタイプを説明します。

表F-23 アセットに関連するEL

EL 機能

#{srmContext[wCond['id']['like']['resourceGUID']]}

指定されたIDのアセットを返します

#{srmContext[wCond['displayName']['like']['resourceDisplayName']]}

指定された表示名を持つ任意のアセットを返します

#{srmContext[wCond['displayNameKey']['like']['displayNameKey']]}

指定された表示名キーを持つ任意のアセットを返します

#{srmContext[wCond['description']['like']['resourceDescription']].singleResult}

指定された値が説明に含まれるアセットを1つ返します

複数の結果を取得するには、singleResultのかわりにresultListを使用します。

#{srmContext[wCond['descriptionKey']['like']['descriptionKey']].singleResult}

指定された説明キーを持つアセットを1つ返します

説明キーは、アセットの説明を示す、xsrtファイル内のキーです。

複数の結果を取得するには、singleResultのかわりにresultListを使用します。

#{srmContext[wCond['createdDate']['like']['resourceCreationDate']]}

指定された作成日を持つ任意のアセットを返します

#{srmContext[wCond['modifiedBy']['like']['resourceLastModifiedBy']]

指定されたユーザー名のユーザーにより最後に変更された任意のアセットを返します

#{srmContext[wCond['modifiedDate']['like']['resourceLastModifiedDate']]}

指定された日付以前に最後に変更された任意のアセットを返します

#{srmContext[wCond['resourceScope']['like']['resourceScope']]}

指定されたスコープに該当する任意のアセットを返します

#{srmContext[wCond['category']['like']['categoryName']]}

指定されたカテゴリに該当する任意のアセットを返します

例:

#{srmContext[wCond['category']['like']['siteTemplates']]}

カテゴリ名として使用できるものには、siteTemplatepageStyle, dataPresentercontentPresenterresourceCatalognavigationtaskFlowdataControltaskFlowStyleskinなどがあります。

#{srmContext[wCond['contentDirectory']['like']['contentDirectory']]}

指定されたディレクトリに格納されている任意のアセットを返します

#{srmContext[wCond['metadataFile']['like']['metadataFileLocation']]}

指定されたメタデータ・ファイルからアセット・メタデータを返します

たとえば、次の式はファイル/home/metadata/data.xmlからアセット・メタデータを返します。

#{srmContext[wCond['metadataFile']['like']['/home/metadat/data.xml']]}

#{srmContext[wCond['jspx']['like']['jspxFileLocation']]}

指定された場所にある任意のjspxファイルを返します

たとえば、次の式はpage.jspxファイルを返します。

#{srmContext[wCond['jspx']['like']['/home/web/page.jspx']]}

#{srmContext[wCond['pageDef']['like']['pageDefinition']]}

指定されたページ定義が含まれる任意のjspxファイルを返します

#{srmContext[wCond['iconURI']['like']['iconURI']]}

指定されたアイコンURIのアイコンを返します

#{srmContext[wCond['excludeFrom']['like']['excludeFromScopes']]}

より大きな式で使用され、除外されたスコープで使用可能なリソースを除く、指定されたすべてのリソースを返します

#{srmContext[wCond['usesCustomSecurity']['like']['usesCustomSecurity']]}

より大きな式で使用され、カスタム・セキュリティを使用する、または使用しない、任意のアセットを返します

usesCustomSecurityTRUEまたはFALSEに設定します。例:

#{srmContext[wCond['usesCustomSecurity']['like']['TRUE']]}

#{srmContext[wCond['seeded']['like']['seeded']]}

より大きな式で使用され、指定された値に応じてシードされる、またはシードされない、任意のアセットを返します

seededTRUEまたはFALSEに設定します。例:

#{srmContext[wCond['seeded']['like']['TRUE']]}

#{srmContext[wCond['visibleType']['like']['visibleType']]}

より大きな式で使用され、指定された可視性タイプの任意のアセットを返します

visibleTypeTRUEFALSEまたはアセットが絶対に表示されないことを示すNEVERに設定します。たとえば、次の式は表示されるアセット、すなわちShowに設定されているアセットを返します。

#{srmContext[wCond['visibleType']['like']['TRUE']]}

#{srmContext[wCond['visible']['like']['visible']]}

より大きな式で使用され、可視性がTRUEまたはFALSEのどちらかに設定されている1つまたは複数のアセットを返します。

#{srmContext[wCond['createdBy']['like']['resourceCreator']]}

より大きな式で使用され、指定されたユーザーによって作成された任意のアセットを返します

#{srmContext[wCond['resourceType']['like']['resourceType']]}

より大きな式で使用され、指定されたタイプの1つまたは複数のアセットを返します

たとえば、次の式はタイプSITE_TEMPLATEのアセットを検索します。

#{srmContext[wCond['resourceType']['like']['SITE_TEMPLATE']]}

すべてのアセット・タイプのリストは、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスGenericSiteResourceTypesクラスを参照してください。

#{srmContext[wCond['version']['like']['version']]}

より大きな式で使用され、指定されたバージョンのアプリケーションで使用可能な1つまたは複数のアセットを返します

#{srmContext[wCond['resourceScope']['like']['scopeName']]}

より大きな式で使用され、指定されたスコープで使用可能な1つまたは複数のアセットを返します

たとえば、次の式はスコープ(このインスタンスではポータル)がMyPortalのアセットを検索します。

#{srmContext[wCond['resourceScope']['like']['MyPortal']]}

デフォルト・スコープ、すなわちアプリケーション・スコープ内を検索するには、defaultScopeを使用します。

#{srmContext[wCond['searchType']['like']['searchType']]}

より大きな式で使用され、組み込まれている他の式で設定された値が含まれる、またはその値に等しい、1つまたは複数のアセットを返します

searchTypeCONTAINSまたはEQUALSに設定します。


F.14.4.1 例: アセットに対するEL式の使用

この項では、ユーザーのロールに基づいてページ・テンプレートを表示するためのEL式の使用例を示します。

この例では、EL式を使用して、モデレータに特定のページ・テンプレートが表示されるようにして、モデレータがそのページ・テンプレートで使用できる機能やリンクにアクセスできるようにします。

ユーザー・ロールに基づいてページ・テンプレートを表示するには:

  1. 目的のポータルの管理設定に移動します。

  2. 「アセット」を選択してから、「ページ・テンプレート」を選択します。ページ・テンプレートを選択して「拡張編集オプション」アイコンをクリックし、「式ビルダー」を選択します。

  3. 「値または式の入力」で、次の式を入力します。

    #{srmContext[wCond['resourceType']['like']['siteTemplate']][wCond['displayName']['like'][WCSecurityContext.userInScopedRole['Moderator'] ? 'Fusion Side Navigation' : 'WebCenter Spaces Top Navigation']].singleResult.id}
    

    ここで:

    • srmContext[wCond['resourceType']['like']['siteTemplate']]

      スコープ内のすべてのページ・テンプレートのリストを取得します。

    • [wCond['displayName']['like'][WCSecurityContext.userInScopedRole['Moderator'] ? 'Fusion Side Navigation' : 'WebCenter Portal Top Navigation']]

      現在のユーザーがモデレータかどうかによって、リストを1つまで縮小します。ユーザーがモデレータであれば、「Fusionサイド・ナビゲーション」ページ・テンプレートが適用されます。その他すべてのユーザー・ロールでは、「WebCenter Portalトップ・ナビゲーション」ページ・テンプレートを使用してポータルがレンダリングされます。

    • singleResult.id

      必要とされるエントリのGUIDを返します。

  4. 「OK」をクリックします。

F.14.5 特定のポータルに関連するEL式

表F-24は、ポータルに関連するEL式をリストし、それぞれが提供する機能のタイプを説明します。


注意:

ポータルの内部名は、ポータルの管理設定の「概要」ページにある「PortalのURL」で指定された名前のことです。ポータルの表示名は、「名前」で指定された名前です。表F-24に示したEL式の多くは、ポータルの内部名を呼び出します。


表F-24 特定のポータルに関連するEL式

機能

#{spaceContext}

現在のWebリクエスト内で、すべてのポータル関連情報へのアクセス・ポイントを提供するoracle.webcenter.spaces.context.SpacesContextオブジェクト。

この式の値は、Java API SpacesContext.getCurrentInstance()の起動時に戻される値です。

#{spaceContext.currentSpace}

現在のWebリクエストに関連付けられているポータルを表すoracle.webcenter.spaces.Spaceオブジェクト。現在のWebリクエストがホーム・ポータル・コンテキストにある場合は、null値が返されます。

この式の値は、Java API SpacesContext.getCurrentInstance().getCurrentSpace()の起動時に戻される値です。

#{spaceContext.currentSpaceName}

現行のWebリクエストに関連付けられているポータルの名前。現在のWebリクエストがホーム・ポータル・コンテキストにある場合は、null値が返されます。

この式の値は、Java API SpacesContext.getCurrentInstance().getCurrentSpace()の起動時に戻される値です。

#{spaceContext.space['portalName']}

#{spaceContext.currentSpace}

spaceNameという名前のポータルまたは現在のポータル(currentSpace)を表すoracle.webcenter.spaces.Spaceオブジェクト。たとえば、#{spaceContext.space['FinanceProject']}は、FinanceProjectという名前のポータルのポータル・オブジェクトを返します。

この式の値は、現行のADFContextMDSSessionを渡して現行のSpacesManagerに対して.getSpace(...)を起動するときにJavaで戻される値です。

#{spaceContext.space['portalName'].metadataPath}

#{spaceContext.currentSpace.metadataPath}

指定した名前portalNameを持つポータルまたは現在のポータル(currentSpace)のポータル・メタデータ・ドキュメントのMDSパス。たとえば、#{spaceContext.space['FinanceProject'].metadataPath}は、/oracle/webcenter/space/metadata/spaces/FinanceProject/space.xmlと評価されます。

この式の値は、ポータルのポータル・オブジェクトに対して.getMetadataPath()を起動するときにJavaで返される値です。

#{spaceContext.space['portalName'].metadata}

#{spaceContext.currentSpace.metadata}

portalNameという名前のポータルまたは現在のポータル(currentSpace)に関するメタデータを含んだoracle.webcenter.spaces.beans.SpaceType Bean。

この式の値は、現在のADFContextMDSSessionで渡されるポータルのポータル・オブジェクトに対して.getMetadata()を起動するときにJavaで返される値です。

#{spaceContext.space['portalName'].metadata.displayName}

#{spaceContext.currentSpace.metadata.displayName}

portalNameという名前のポータルまたは現在のポータル(currentSpace)の表示名。たとえば、Web20Portalという名前のポータルがweb 2.0 Portalという表示名を持つ場合、#{spaceContext.space['Web20Portal'].metadata.displayName}web 2.0 Portalと評価されます。

#{spaceContext.space['portalName'].GSMetadata.groupSpaceURI}

#{spaceContext.currentSpace.GSMetadata.groupSpaceURI}

portalNameという名前のポータルまたは現在のポータル(currentSpace)のURL。

#{WCPrepareImageURL[spaceContext.space['portalName'].metadata.icon]['']}

#{WCPrepareImageURL[spaceContext.currentSpace.metadata.icon]['']}

portalNameという名前のポータルまたは現在のポータル(currentSpace)に関連付けられたアイコンへのURL。

#{spaceContext.space['portalName'].metadata.description}

#{spaceContext.currentSpace.metadata.description}

portalNameという名前のポータルまたは現在のポータル(currentSpace)の説明。たとえば、#{spaceContext.space['FinanceProject'].metadata.description}Conglomeration of all teams involved in financial activities(財務アクティビティに関与する全チームの集合)と評価されます。

#{spaceContext.space['portalName'].metadata.creationDate}

#{spaceContext.currentSpace.metadata.creationDate}

指定した名前portalNameを持つポータルまたは現在のポータル(currentSpace)の作成日時を表すjava.util.Calendarオブジェクト。

#{spaceContext.space['portalName'].metadata.createdBy}

#{spaceContext.currentSpace.metadata.createdBy}

portalNameという名前のポータルまたは現在のポータル(currentSpace)の作成者のユーザー名。

#{spaceContext.space['portalName'].metadata.keywords}

#{spaceContext.currentSpace.metadata.keywords}

portalNameという名前のポータルまたは現在のポータル(currentSpace)に関連付けられた検索可能なキーワードのカンマ区切りリスト。たとえば、ポータルFinanceProjectのキーワードがfinance, project, moneyの場合、#{spaceContext.space['FinanceProject'].metadata.keywords}finance, project, moneyと評価されます。

#{spaceContext.space['portalName'].metadata.offline}

#{spaceContext.currentSpace.metadata.offline}

portalNameという名前のポータルまたは現在のポータル(currentSpace)がオフラインかどうかを示すブール値。

#{spaceContext.space['portalName'].metadata.closed}

#{spaceContext.currentSpace.metadata.closed}

portalNameという名前のポータルまたは現在のポータル(currentSpace)が閉じているかどうかを示すブール値。

#{spaceContext.space['portalName'].metadata.selfRegistration}

#{spaceContext.currentSpace.metadata.selfRegistration}

portalNameという名前のポータルまたは現在のポータル(currentSpace)への自己登録をユーザーが許可されているかどうかを示すブール値。

#{spaceContext.space['portalName'].metadata.discoverable}

#{spaceContext.currentSpace.metadata.discoverable}

portalNameという名前のポータルまたは現在のポータル(currentSpace)の存在を、ユーザーが検索するか「マイ・ポータル」ページのリストを確認することで検出できるかどうかを示すブール値。

#{spaceContext.space['portalName'].metadata.publishRSS}

#{spaceContext.currentSpace.metadata.publishRSS}

portalNameという名前のポータルまたは現在のポータル(currentSpace)がRSSフィードを公開するかどうかを示すブール値。

#{spaceContext.space['portalName'].distributionList}

#{spaceContext.currentSpace.distributionList}

portalNameという名前のポータルまたは現在のポータル(currentSpace)に関連付けられているメーリング・リストの電子メール・アドレス。

#{spaceContext.space['portalName'].metadata.customAttributes['attributeName']}

#{spaceContext.currentSpace.metadata.customAttributes['attributeName']}

portalNameという名前のポータルまたは現在のポータル(currentSpace)の、attributeNameという名前の特定のカスタム属性の値。たとえば、FinanceProjectポータルのstockPriceというカスタム属性の値が13.9の場合、#{spaceContext.space['FinanceProject'].metadata.customAttributes['stockPrice']}13.9と評価されます。

#{WCPrepareImageURL[spaceContext.space['portalName'].metadata.logo]['']}

#{WCPrepareImageURL[spaceContext.currentSpace.metadata.logo]['']}

portalNameという名前のポータルまたは現在のポータル(currentSpace)のロゴURLを返します。

#{spaceContext.spacesQuery.property['value']}

#{spaceContext.spacesQuery.property['value'].listSpaces}

property['value']という形式の問合せパラメータを使用してポータルを問い合せる方法。このpropertyはプロパティの名前(unionOfshapeなど)を意味しており、valueはすべてのポータル、検出可能なポータルなどのリストをフェッチするために使用する基準を意味しています。

式にlistSpacesを追加すると、問合せはタイプがGSMetadataであるポータルのリストを返します。(詳細は、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスInterface GSMetadataに関する項を参照してください。)

たとえば、次のEL式は検出可能なすべてのポータルのリストを返します。

#{spaceContext.spacesQuery.unionOf['DISCOVERABLE'].listSpaces}

listportalsをELに追加しない場合、ELはタイプがSpacesQueryParameterのオブジェクトを評価します。このオブジェクト・タイプはSpacesManager.getSpaces(SpacesQueryParameters)を使用して評価する必要があります。これにより、タイプがGSMetadataのポータルのリストが返されます。

たとえば、次のEL式は、すべての問合せ条件が移入された状態で、タイプがSpacesQueryParametersのインスタンスを返します。

#{spaceContext.spacesQuery.unionOf['DISCOVERABLE']}

#{spaceContext.spacesQuery.unionOf['USER_JOINED'].shape['ROOT_LEVEL'].listSpaces}

現在のユーザーがメンバーになっているすべての最上位ポータルのリストを返します。

このELは、親を持たないポータルのみを返します(つまりサブポータルは返しません)。

#{spaceContext.spacesQuery.unionOf['USER_JOINED'].shape['RECURSIVE_FLATTENED'].listSpaces}

現在のユーザーがメンバーになっているすべてのポータルのリストを返します。

このELは、現在のユーザーがアクセスできる各親ポータルの下にあるすべてのサブポータルも返します。

例の詳細は、第F.14.5.1項「例: 様々なポータルに対するEL式の使用」を参照してください。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].sort['sortBy field picked from WcSpaceHeader']}

ソート基準によって指定された順序にソートされたポータルを返します。

たとえば、次の問合せは、ユーザーがアクセス可能なポータルのリストを、discoverableおよびlastUpdateDateフィールドでソートして返します。

次の例では、識別子spが、ポータルWcSpaceHeaderのJPAエンティティを表しています。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].sort['sp.discoverable']['asc']['sp.lastUpdateDate']['desc'].listSpaces}

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].pageNumber[page_num].listSpaces}

問合せ基準と一致する結果から選択するページ番号を指定できます(0ベース)。

たとえば、次の式は、ユーザーがアクセス可能なすべてのポータルのリストを返し、結果セットの3ページ目を返します。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].pageNumber[2].listSpaces]}

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].itemsPerPage[page_num].listSpaces}

結果のポータルをページに分割するときに、各ページに含まれる結果の数を指定できます。

たとえば、次の式は、ユーザーがアクセス可能なすべてのポータルのリストを返し、各ページに10レコードずつリストします。

#{spaceContext.spacesQuery.unionOf['ALL_QUERIABLE'].pageNumber[10].listSpaces]}
#{spaceContext.spacesQuery.unionOf.ALL_QUERIABLE.where[wCond['sp.createdBy']['like']['monty%'] ['and'] [wCond['sp.selfSubEnabled']['is']['null'] ['or'] [wCond['sp.selfSubEnabled']['=']['N']] ['not'] ] ].listSpaces}

指定されたユーザーが作成し、自己サブスクリプションが有効な、ユーザーがアクセス可能なすべてのポータルのリストを返します。(詳細は、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスSpacesQueryParametersおよびSpacesQueryFilterに関する項を参照してください。)


F.14.5.1 例: 様々なポータルに対するEL式の使用

この項では、様々なポータルを問い合せるためのEL式の使用例を示します。

この例では、次のELを使用して、自分がメンバーになっているすべてのポータルのリストを表示します。

"#{spaceContext.spacesQuery.unionOf['USER_JOINED'].shape['RECURSIVE_FLATTENED'].listSpaces}"

さらに次のメソッドを使用して、ポータルのロゴ、名前、説明、メンバー数も表示します。

  • iconURI: ポータルのロゴを表示

  • displayName: ポータル名を表示

  • description: ポータルの説明を表示

  • memberCount: ポータルのメンバー数を表示

ポータルを問い合せるには:

  1. 新しいタスク・フローを作成し、それを使用可能にマークします。詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のタスク・フローの使用に関する項を参照してください。

  2. タスク・フローのソース・コードを編集します。「アセット」ページで、タスク・フローを選択します。「アクション」メニューから、「ソースの編集」を選択します。

  3. 「ソースの編集」ダイアログの「フラグメント」タブで、既存のコードを次のコードに置き換えます。

    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:pe="http://xmlns.oracle.com/adf/pageeditor" xmlns:cust="http://xmlns.oracle.com/adf/faces/customizable"
    xmlns:f="http://java.sun.com/jsf/core" xmlns:af="http://xmlns.oracle.com/adf/faces/rich" xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:fn="http://java.sun.com/jsp/jstl/functions">
       <af:panelGroupLayout id="pgl1">
          <cust:panelCustomizable id="pc1">
             <table border="0" width="100%">
                <af:iterator id="it1" var="row" value="#{spaceContext.spacesQuery.unionOf['USER_JOINED'].shape['RECURSIVE_FLATTENED'].listSpaces}">
                      <c:set var="iconURI" value="#{fn:split(row.iconURI,'}')[1]}"/>
                      <c:set var="displayName" value="#{row.displayName}"/>
                      <c:set var="description" value="#{row.description}"/>
                      <c:set var="numMembers" value="#{row.memberCount}"/>
                           <tr class="PortletText1">
                                  <td width="16px" rowspan="3" valign="top">
                                          <af:image id="img1"
    source="/webcenter-spaces-resources/oracle/webcenter/siteresources/scopedMD/shared#{iconURI}/ICON16"/>
                                   </td>
                                   <td>
                                        <af:outputText id="otCol1"
                                                 value="#{displayName}"
                                                             inlineStyle="color:#333333; font-size:12px; font-weight:bold;"/>
                                    </td>
                             </tr>
                              <tr>
                                  <td>
                                      <af:outputText id="otCol3"
                                                       value="#{description}"
                                                             inlineStyle="color:#666666; font-size:12px;"/>
                                    </td>
                              </tr>
                              <tr>
                                 <td>
                                    <af:outputText id="otCol4"
                                                  value="members (#{numMembers}) -"
                                                             inlineStyle="color:#666666; font-size:10px;"/>
                                         <af:spacer id="spacer1" width="5px"/>
                                         <af:goLink id="gl1"
                                                         destination="/spaces/#{row.name}"
                                                         targetFrame="_blank"
                                                         text="view"/>
                                  </td>
                              </tr>
                </af:iterator>
             </table>
          </cust:panelCustomizable>
       </af:panelGroupLayout>
    </jsp:root>
    
  4. このタスク・フローをページに追加します。リソース・カタログでは、「UIコンポーネント」「タスク・フロー」でカスタム・タスク・フローを使用できます。

    ページには、自分がメンバーになっているすべてのポータルのリストが表示されます。

F.14.6 特定のページに関連するEL式

表F-25は、ポータル・ページに関連するEL式をリストし、それが提供する機能のタイプを説明します。

表F-25 特定のページに関連するEL式

機能

#{pageDocBean.title}

ページの表示名を戻します。次に例を示します。

FinanceProject

#{pageDocBean.createdBy}

ページを作成したユーザーのユーザー名を戻します。次に例を示します。

monty

#{pageDocBean.createDateString}

ページの作成日時を戻します。次に例を示します。

2008-11-19T10:18:36

#{pageDocBean.lastUpdatedBy}

ページを最後に更新したユーザーのユーザー名を戻します。次に例を示します。

monty

#{pageDocBean.lastUpdateDateString}

ページが最後に更新された日時を戻します。次に例を示します。

2008-11-19T10:18:36

#{pageDocBean.pagePath}

アプリケーションのルート・ディレクトリに対する相対パスとして、ページへのファイル・ディレクトリ・パスを戻します。次に例を示します。

/oracle/webcenter/page/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/user/Umonty/Page4.jspx

#{pageDocBean.name}

ページのファイル名を戻します。次に例を示します。

Page4.jspx

#{pageDocBean.UICSSStyle}

ページで使用されたスタイル・スキームの名前を戻します。次に例を示します。

WCSchemeEggShell

#{pageDocBean.UISchemeBGImage}

ページ・スキームの背景イメージのディレクトリ・パスとファイル名を戻します。

#{pageDocBean.UISchemeBGColorString}

ページ・スキームの背景色の16進値を戻します。次に例を示します。

#ffa500

#{pageDocBean.pagePermission}

ページに対する現行ユーザーの権限を戻します。次に例を示します。

oracle.webcenter.page.model.security.CustomPagePermission

#{pageDocBean.pageSecurityTarget}

現行のページをセキュリティ・システムに対して一意に識別する60文字程度の文字列です。次に例を示します。

oracle_webcenter_page_scopedMD_s8bba98ff_4cbb_40b8_beee_296c916a23ed_user_Umonty_Page4PageDef

#{changeModeBean.inEditMode}

現在のページがコンポーザ・モードの場合は、trueを返します。現在のページがコンポーザ・モードでない場合は、falseを返します。


F.14.7 ポータル・イベント・コンテキストに関連するEL

表F-26は、ペイロードの受け渡しをトリガーできるポータル・イベントのタイプ(イベント機能に関連するイベントではない)に関連するEL式をリストします。

表F-26に示すイベント・ペイロードには、発生後、その全部または一部にアクセスできます。

たとえば、ペイロード全体に対して、次のELを使用します。

#{wcEventContext.events.eventName}

例:

#{wcEventContext.events.WebCenterUserSelected}

表F-26のELのペイロードはすべてマップです。マップ・エントリを参照解除するには、マップ用の標準のELを使用します。

#{wcEventContext.events.WebCenterUserSelected.UserName}

関連項目:

イベント・ワイヤリングの詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築の「ページ、タスク・フロー、ポートレット、ADFコンポーネントのワイヤリング」の章を参照してください。


表F-26 イベント・コンテキストに関連するEL式

機能

イベント・コンテキスト

#{wcEventContext.events.WebCenterResourceSelected}

ドキュメント名

#{wcEventContext.events.WebCenterResourceSelected.name}

ドキュメント作成者

#{wcEventContext.events.WebCenterResourceSelected.createdBy}

ドキュメント最終変更者

#{wcEventContext.events.WebCenterResourceSelected.lastModifiedBy}

プロデューサとコンシューマ間のコンテキスト・ワイヤリングで使用します。プロデューサのメタデータの一部分をコンシューマのメタデータの一部分に(たとえば、ドキュメント作成者を作成者のプロファイルに)関連付けるマップを返します。

プロデューサのタスク・フローには次のものが含まれます。

  • ドキュメント・マネージャ

  • 最近のドキュメント

  • ドキュメント・リスト・ビューア


コンシューマのタスク・フローには次のものが含まれます。

  • アクティビティ・グラフ - 類似アイテム(ユーザーに関係する可能性があるその他ドキュメントを表示)

  • リンク(選択したドキュメントにリンクするアイテムを表示)

  • プロファイル(ドキュメントの作成者のプロファイルを表示)

  • アクティビティ・ストリーム(このドキュメントに関連するアクティビティを表示)

  • タグ(このドキュメントのタグとタグ・センターにアクセスする方法)

イベント・コンテキスト

#{wcEventContext.events.WebCenterUserSelected}

ユーザー名

#{wcEventContext.events.WebCenterUserSelected.userName}

ユーザーGUID

#{wcEventContext.events.WebCenterUserSelected.userGUID}

ポータル名

#{wcEventContext.events.WebCenterUserSelected.portalName}

ポータルGUID

#{wcEventContext.events.WebCenterUserSelected.portalGUID}

プロデューサとコンシューマ間のコンテキスト・ワイヤリングで使用します。プロデューサのメタデータの一部分をコンシューマのメタデータの一部分に(たとえば、ユーザーをユーザーのコネクションに)関連付けるマップを返します。

プロデューサのタスク・フローには次のものが含まれます。

  • コネクション

  • ポータル・メンバー

コンシューマのタスク・フローには次のものが含まれます。

  • コネクション(選択したユーザーのコネクションを表示)

  • 「ドキュメント」タスク・フロー(選択したユーザーによって作成されたドキュメントを表示)

  • アクティビティ・ストリーム(このユーザーのアクティビティを表示)

  • タグ(このユーザーによって作成されたタグ)

  • プロファイル(このユーザーのプロファイルを表示)

イベント・コンテキスト

#{wcEventContext.events.WebCenterConnectionSelected}

プロファイルのユーザー名

#{wcEventContext.events.WebCenterConnectionSelected.profileUserName}

プロファイルのユーザーGUID

#{wcEventContext.events.WebCenterConnectionSelected.profileUserGUID}

コネクションがあるユーザー名

#{wcEventContext.events.WebCenterConnectionSelected.userName}

コネクションがあるユーザーGUID

#{wcEventContext.events.WebCenterConnectionSelected.userGUID}

--

#{wcEventContext.events.WebCenterSpaceSelected.SpaceName}

選択されたポータルの名前を返します

#{wcEventContext.events.WebCenterSpaceSelected.SpaceGUID}

選択されたポータルのGUIDを返します


F.14.8 実用的なEL式

表F-27は、実用的なEL式をリストし、それらが提供する機能のタイプを説明します。

表F-27 実用的なEL式

機能

#{userPreferences.currentDate}

現在の日付を現在のユーザーのプリファレンスで指定されている形式で戻します。

#{WCTruncator['text']['numberOfChars']}

textとして指定された文字列をnumberOfCharsとして指定された文字数まで切り捨て、後に省略記号を付けたものを戻します。たとえば、#{WCTruncator['abracadabra']['5']}abrac...と評価されます。

#{facesContext.viewRoot.locale}

#{facesContext.externalContext.requestLocale}

どちらの式も、リクエストのロケール(ブラウザのロケール設定)を返します。

#{adfFacesContext.skinFamily}

現行のアプリケーション・スキン・ファミリを戻します。戻り値は#{requestContext.skinFamily}と同じです。


F.15 デバイス設定に関連するEL式

この項では、デバイス設定に関する情報を取得するELについて説明します。デバイス設定の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理の「デバイス設定の管理」の章を参照してください。

EL式を使用して、特定のデバイスをターゲットとするアセット(スキンおよびページ・テンプレート)を設定できます。デバイス設定でのELの使用方法の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理の「デバイス設定の管理」の章を参照してください。

たとえば、ページ・デザイナは、デバイスの属性を使用してページのコンテンツ領域の幅を制御するために、次のELを使用できます。

#{DeviceAgent.device.attributes['display_resolution_width']

表F-28 デバイス・エージェントに関連するEL式

関連するJava API 説明

#{DeviceAgent}

DeviceAgent.getInstance()

すべてのデバイス設定ELに対するルート・エントリ・ポイント。

#{DeviceAgent.device}

DeviceAgent.getInstance().getDevice()

現在のリクエストのマップ先のデバイス。

#{DeviceAgent.deviceGroups}

DeviceAgent.getInstance().getDeviceGroups()

現在のデバイスのマップ先のデバイス・グループのリスト。この操作では、enabledとマークされているかどうかに関係なく、すべてのデバイス・グループが返されます。

#{DeviceAgent.currentScopeDeviceGroup}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup()

特定のポータルについて着信リクエストがマップされたデバイス・グループを取得します。このELによって、特定のデバイスについてページ・バリアントが表示されない理由に関する問題を、管理者が診断しやすくなります。


表F-29 デバイスに関連するEL式

関連するJava API 説明

#{DeviceAgent.device}

DeviceAgent.getInstance().getDevice()

現在のリクエストのマップ先のデバイス。

#{DeviceAgent.device.name}

DeviceAgent.getInstance().getDevice().getName()

デバイスの名前。システム・フレンドリな識別子で、内部リンクに使用できます。

#{DeviceAgent.device.displayName}

DeviceAgent.getInstance().getDevice().getDisplayName()

デバイスの表示名。

#{DeviceAgent.device.attributes}

DeviceAgent.getInstance().getDevice().getAttributes()

デバイスに関連付けられている属性のマップ。画面サイズ、OSバージョンなど。

たとえば、次のELは、デバイスの作成時に設定された表示解像度の幅を返します。

#{DeviceAgent.device.attributes['display_resolution_width']}


表F-30 デバイス・グループに関連するEL式

関連するJava API 説明

#{DeviceAgent.currentScopeDeviceGroup}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup()

現在のリクエストのマップ先のデバイス・グループ。適切なデバイス・グループを識別するための一般的なフローは次のとおりです。

  1. 現在のリクエストが属しているデバイスを識別します。

  2. 現在のポータルに対して有効になっているすべてのデバイス・グループを取得します。

  3. デバイスが属している最初のデバイス・グループ(前述のリスト)を識別します。

#{DeviceAgent.currentScopeDeviceGroup.name}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup().getName()

デバイス・グループの名前。例:

#{DeviceAgent.currentScopeDeviceGroup.name == 'androidTablets'}

#{DeviceAgent.currentScopeDeviceGroup.portalPageTemplate}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup().getPortalPageTemplate()

このデバイス・グループ・オブジェクトに関連付けられているポータル・ページ・テンプレートのGUIDを返します。メソッドからNULLが返された場合、ポータルのデフォルト・ページ・テンプレート設定が有効になっています。

注意: 取得したGUIDの操作に使用するリソースELの詳細は、第F.6項「ポータル・リソースに関連するEL」を参照してください。

#{DeviceAgent.currentScopeDeviceGroup.portalSkin}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup().getPortalSkin()

このデバイス・グループに関連付けられているポータル・スキンのGUIDを返します。メソッドからNULLが返された場合、ポータルのデフォルト・スキン設定が有効になっています。

注意: 取得したGUIDの操作に使用するリソースELの詳細は、第F.6項「ポータル・リソースに関連するEL」を参照してください。

#{DeviceAgent.currentScopeDeviceGroup.default}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup().isDefault()

デバイス・グループが現在のデバイスのデフォルトである場合は、trueを返します。デバイス・グループがデバイスのデフォルトでない場合は、falseを返します。たとえば、デフォルトのデバイス・グループがデスクトップ・ブラウザになっているときに、iPad上でポータルにアクセスした場合、デバイス・グループはiPadになりますが、これはデフォルトのデバイス・グループではありません。この場合、メソッドはfalseを返します。

#{DeviceAgent.currentScopeDeviceGroup.enabled}

DeviceAgent.getInstance().getCurrentScopeDeviceGroup().isEnabled()

このデバイス・グループが現在のポータルに対して有効とマークされているかどうかを識別します。

注意: この呼出しでは、デバイス・グループは常にtrueの状態です。このELは、すべてのデバイス・グループがEL #{DeviceAgent.deviceGroups}によって取得された場合に便利です。


F.15.1 デバイス属性を検出するタスク・フローのサンプル・コード

例F-1は、デバイス属性を検出するタスク・フローの作成に使用できるJSFページ・フラグメントを示しています。ELによって属性が返されます。このタスク・フローは、デバイス上でポータルが正しくレンダリングされないような状況のトラブルシューティングなどに役立ちます。デバイス属性を検出することで、レンダリング問題の修正処理を行えます。表F-8は、このサンプル・コードによって作成されたタスク・フローからの出力を示しています。

例F-1 デバイス属性を検出するタスク・フロー・コード

<?xml version='1.0' encoding='UTF-8'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:pe="http://xmlns.oracle.com/adf/pageeditor" xmlns:cust="http://xmlns.oracle.com/adf/faces/customizable" xmlns:f="http://java.sun.com/jsf/core" xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
   <af:panelGroupLayout layout="scroll" id="pgl1">
      <cust:panelCustomizable id="pc1"/>
      <f:facet name="separator">
         <af:separator id="s1"/>
      </f:facet>
      <af:panelFormLayout id="pfl1">
         <af:group id="g1">
            <af:panelLabelAndMessage id="it0" label="Current Device" labelStyle="color:#0000ff;font-weight:bold;"/>
            <af:panelLabelAndMessage id="it1plm" label="Internal Name">
               <af:outputText id="it1" value="#{DeviceAgent.device.name}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it2plm" label="Display Name">
               <af:outputText id="it2" value="#{DeviceAgent.device.displayName}"/>
            </af:panelLabelAndMessage>
         </af:group>
         <af:group>
            <af:panelLabelAndMessage id="it01" label="Current Device Group" labelStyle="color:#0000ff;font-weight:bold;"/>
            <af:panelLabelAndMessage id="it3plm" label="Internal Name">
               <af:outputText id="it3" value="#{DeviceAgent.currentScopeDeviceGroup.name}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it4plm" label="Display Name">
               <af:outputText id="it4" value="#{DeviceAgent.currentScopeDeviceGroup.displayName}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it5plm" label="PageTemplate">
               <af:outputText id="it5" value="#{srmContext.id[DeviceAgent.currentScopeDeviceGroup.portalPageTemplate].singleResult.displayName}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it6plm" label="Skin">
               <af:outputText id="it6" value="#{srmContext.id[DeviceAgent.currentScopeDeviceGroup.portalSkin].singleResult.displayName}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it7plm" label="Is Default">
               <af:outputText id="it7" value="#{DeviceAgent.currentScopeDeviceGroup.default}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it8plm" label="Is Enabled">
               <af:outputText id="it8" value="#{DeviceAgent.currentScopeDeviceGroup.enabled}"/>
            </af:panelLabelAndMessage>
         </af:group>
         <af:group>
            <af:panelLabelAndMessage id="it9plm" label="Current Browser User Agent" labelStyle="color:#0000ff;font-weight:bold;">
               <af:outputText id="it9" value="#{DeviceAgent.userAgent}"/>
            </af:panelLabelAndMessage>
         </af:group>
         <af:group>
            <af:panelLabelAndMessage id="pt0" label="Page Template Info" labelStyle="color:#0000ff;font-weight:bold;"/>
            <af:panelLabelAndMessage id="it010plm" label="Expected PageTemplate:GUID">
               <af:outputText id="it010" value="#{DeviceAgent.currentScopeDeviceGroup.portalPageTemplate}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it0010plm" label="Expected PageTemplate:Name">
               <af:outputText id="it0010" value="#{srmContext.id[DeviceAgent.currentScopeDeviceGroup.portalPageTemplate].singleResult.displayName}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it10plm" label="Current PageTemplate:GUID">
               <af:outputText id="it10" value="#{WCAppContext.application.siteTemplatesManager.currentSiteTemplateId}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it10aplm" label="Current PageTemplate:Name">
               <af:outputText id="it10a" value="#{srmContext.id[WCAppContext.application.siteTemplatesManager.currentSiteTemplateId].singleResult.displayName}"/>
            </af:panelLabelAndMessage>
         </af:group>
         <af:group>
            <af:panelLabelAndMessage id="sk0" label="Skin Info" labelStyle="color:#0000ff;font-weight:bold;"/>
            <af:panelLabelAndMessage id="it0111plm" label="Expected Skin:GUID">
               <af:outputText id="it0111" value="#{DeviceAgent.currentScopeDeviceGroup.portalSkin}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it0112plm" label="Expected Skin:Name">
               <af:outputText id="it0112" value="#{srmContext.id[DeviceAgent.currentScopeDeviceGroup.portalSkin].singleResult.displayName}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it111plm" label="Current Skin:GUID">
               <af:outputText id="it111" value=""/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="it112plm" label="Current Skin:Name">
               <af:outputText id="it112" value="#{requestScope['oracle.webcenter.webcenterapp.view.shell.WebCenterShellManager.SHELLHANDLER'].adfFacesSkin}"/>
            </af:panelLabelAndMessage>
         </af:group>
         <af:group>
            <af:panelLabelAndMessage id="pg0" label="Page Info" labelStyle="color:#0000ff;font-weight:bold;"/>
            <af:panelLabelAndMessage id="pg10" label="Page Path">
               <af:outputText id="pg1" value="#{pageDocBean.pagePath}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="pg20" label="Page Style">
               <af:outputText id="pg2" value=""/>
            </af:panelLabelAndMessage>
         </af:group>
         <af:group>
            <af:panelLabelAndMessage id="ap90" label="Optional Attributes" labelStyle="color:#0000ff;font-weight:bold;"/>
            <af:panelLabelAndMessage id="ap1opta" label="brand-name">
               <af:outputText id="ap1" value="#{DeviceAgent.device.attributes['brand-name']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap2opta" label="device-os">
               <af:outputText id="ap2" value="#{DeviceAgent.device.attributes['device-os']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap3opta" label="device-type">
               <af:outputText id="ap3" value="#{DeviceAgent.device.attributes['device-type']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap4opta" label="device_default_aspect_ratio">
               <af:outputText id="ap4" value="#{DeviceAgent.device.attributes['device_default_aspect_ratio']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap5opta" label="device_os-version">
               <af:outputText id="ap5" value="#{DeviceAgent.device.attributes['device_os-version']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap6opta" label="device_preview_css">
               <af:outputText id="ap6" value="#{DeviceAgent.device.attributes['device_preview_css']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap7opta" label="device_preview_horizontal_css">
               <af:outputText id="ap7" value="#{DeviceAgent.device.attributes['device_preview_horizontal_css']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap8opta" label="device_preview_viewport_css">
               <af:outputText id="ap8" value="#{DeviceAgent.device.attributes['device_preview_viewport_css']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap9opta" label="device_preview_viewport_horizontal_css">
               <af:outputText id="ap9" value="#{DeviceAgent.device.attributes['device_preview_viewport_horizontal_css']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap10opta" label="device_streaming_flv">
               <af:outputText id="ap10" value="#{DeviceAgent.device.attributes['device_streaming_flv']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap11opta" label="device_streaming_preferred_http_protocol">
               <af:outputText id="ap11" value="#{DeviceAgent.device.attributes['device_streaming_preferred_http_protocol']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap12opta" label="device_streaming_preferred_protocol">
               <af:outputText id="ap12" value="#{DeviceAgent.device.attributes['device_streaming_preferred_protocol']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap13opta" label="device_video_streaming">
               <af:outputText id="ap13" value="#{DeviceAgent.device.attributes['device_video_streaming']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap14opta" label="display_orientation_support">
               <af:outputText id="ap14" value="#{DeviceAgent.device.attributes['display_orientation_support']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap15opta" label="display_resolution_height">
               <af:outputText id="ap15" value="#{DeviceAgent.device.attributes['display_resolution_height']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap16opta" label="display_resolution_width">
               <af:outputText id="ap16" value="#{DeviceAgent.device.attributes['display_resolution_width']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap17opta" label="is-wireless_device">
               <af:outputText id="ap17" value="#{DeviceAgent.device.attributes['is-wireless_device']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap18opta" label="marketing-name">
               <af:outputText id="ap18" value="#{DeviceAgent.device.attributes['marketing-name']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap19opta" label="model-name">
               <af:outputText id="ap19" value="#{DeviceAgent.device.attributes['model-name']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap20opta" label="model-version">
               <af:outputText id="ap20" value="#{DeviceAgent.device.attributes['model-version']}"/>
            </af:panelLabelAndMessage>
            <af:panelLabelAndMessage id="ap21opta" label="icon">
               <af:outputText id="ap21" value="#{DeviceAgent.device.attributes['icon']}"/>
            </af:panelLabelAndMessage>
         </af:group>
      </af:panelFormLayout>
   </af:panelGroupLayout>
</jsp:root>

図F-8 サンプル・タスク・フローからの出力

図F-8の説明が続きます
「図F-8 サンプル・タスク・フローからの出力」の説明