タグ名: <adfp:portlet>
UIコンポーネント・クラス: oracle.adf.view.faces.component.portlet.PortletBase
コンポーネント・タイプ: oracle.adf.portlet
Oracle ADFポートレットのコンポーネント用タグです。このタグはjspx
WebCenterアプリケーション・ページのポートレットを表します。このポートレットにより、タグ(特にvalue
属性)で指定されたバインディングからのポートレット・コンテナ(プロデューサ)サポートが取得されます。ポートレットの属性および属性値を指定するには、adfp:portlet
タグを使用します。
例1: ポートレット・タグ
<h:form>
<adfp:portlet value="#{bindings.portlet1}"
portletType="/oracle/adf/portlet/richtextportlet ..."
allModesSharedScreen="true"/>
</h:form>
例2: PanelCustomizableコンポーネント内のポートレット・タグ
<h:form>
<cust:panelCustomizable id="panelCustomizable1" text="panelCustomizable 1" isSeededInteractionAvailable="true">
<adfp:portlet value="#{bindings.portlet1}"
portletType="/oracle/adf/portlet/richtextportlet ..."
allModesSharedScreen="true"/>
</cust:panelCustomizable>
</h:form>
属性値は、属性サポートをポートレットに構築したときに関係があります。たとえば、isAboutModeAvailable
をtrue
に設定しても、ポートレットに対し「バージョン情報」モードを定義していない場合、属性設定はポートレットに影響を与えません。
adfp:portlet
タグでは、属性の次の4つのカテゴリが使用されます。
アクション属性により、モード切替えのUIアクションの表示が制御されます。モード切替えアクションはポートレット・ヘッダー上のアイコンとして(「最小化」アイコンなど)表示されるか、またはポートレット・ヘッダー(またはポートレット・クロム)に表示される「アクション」メニューに表示されます。
ポートレットを特定のモードでレンダリングする機能は、ポートレットおよびユーザーの認証レベルによりサポートされるモードに依存します。つまり、ポートレットでモードがサポートされていない場合は、アクション属性をtrue
に設定しても効果はありません。さらに、ユーザーにアクションを実行する十分な権限がない場合は、このユーザーに対しアクションは使用できません。
すべての属性
true
は、ポートレットによりユーザーが属性モードに切り替えるポートレット・クロムでUIアクションがレンダリングされることを意味します。
false
は、ポートレットによりユーザーが属性モードに切り替えるポートレット・クロムでUIアクションがレンダリングされないことを意味します。
属性 | 値 | 説明 |
---|---|---|
isAboutModeAvailable
|
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューの「バージョン情報」コマンドがレンダリングされます。ユーザーは「バージョン情報」を選択してポートレットの「バージョン情報」モードを起動できます。 |
isConfigModeAvailable
|
デフォルト: true |
WebCenterアプリケーションでは、JSR 168ポートレットの「アクション」メニューで「構成」コマンドがレンダリングされます。ユーザーは「構成」を選択してポートレットの「構成」設定を開きます。 |
isCustomizeModeAvailable
|
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューで「カスタマイズ」コマンドがレンダリングされます。「カスタマイズ」モードにより、サイト管理者はポートレットのデフォルトのパーソナライズ・データを編集できます。 |
isDetailModeAvailable
|
true/false デフォルト: true
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューで「詳細」コマンドがレンダリングされます。ユーザーは「詳細」を選択してポートレットの詳細ページを開きます。 この属性によりOracle PDK-Javaポートレットの「詳細ページを表示」モードにマップされます。スタンダード・ベース(JSR 168)のJavaポートレットにはアプリケーションはありません。 |
isHelpModeAvailable
|
true/false デフォルト: true
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューで「ヘルプ」コマンドがレンダリングされます。ユーザーは「ヘルプ」を選択してポートレットのヘルプ・ページを開きます。 |
isMaximizable
|
|
WebCenterでは、ポートレットの「アクション」メニューで「最大化」コマンドがレンダリングされます。ユーザーは「最大化」を選択してポートレットを拡張します。コンポーネントが最大化されると、「リストア」コマンドが「アクション」メニューに表示され、ポートレットがデフォルトの表示モードに戻されます。
「最大化」オプションは 「最大化」および「リストア」アクションは実行時と設計時では異なる動作をします。詳細は、最大化、最小化、リストアおよび移動の概要を参照してください。 |
isMinimizable
|
|
WebCenterアプリケーションでは、ポートレット・ヘッダーで「最小化」アイコンがレンダリングされます。ユーザーはアイコンをクリックしてウィンドウの形にポートレットを縮小します。再度アイコンをクリックするとポートレットのサイズが元に戻ります。 「最小化」アクションは実行時と設計時では異なる動作をします。詳細は、最大化、最小化、リストアおよび移動の概要を参照してください。 |
isMovable
|
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューに「移動」コマンドがレンダリングされます。ユーザーはコマンドを選択し、ページの他のコンポーネントに関係のあるポートレットの現在の場所に応じて、サブコマンドの「上へ移動」、「下へ移動」、「左へ移動」、または「右へ移動」を選択します。 「移動」アクションは実行時と設計時では異なる動作をします。詳細は、最大化、最小化、リストアおよび移動の概要を参照してください。 |
isNormalModeAvailable
|
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューに「リフレッシュ」コマンドがレンダリングされます。ユーザーが「リフレッシュ」コマンドを選択すると、ポートレットはページの他のコンテンツに依存せずにリフレッシュ(再描画)されます(部分ページ・リフレッシュとして知られています)。 |
isPersonalizeModeAvailable
|
|
WebCenterアプリケーションでは、ポートレットの「アクション」メニューに「パーソナライズ」コマンドがレンダリングされます。ユーザーは「パーソナライズ」を選択してポートレットの個人の表示を変更します。このモードはスタンダード・ベースのJavaポートレット(JSR 168)ウィザードの「編集」モード・セクションと同じです。 「パーソナライズ」コマンドは、認証を受けたユーザー(つまりログインしているユーザー)の「アクション」メニューにのみ表示されます。パブリック・ユーザーまたは認証を持たないユーザーには表示されません。ユーザーがポートレットの表示をパーソナライズできるようにするには、なんらかのアプリケーション・セキュリティを実装する必要があります。 ポートレットを作成する開発者であり、アプリケーションに対して完全なセキュリティ・モデルを作成せずに「パーソナライズ」モードをテストする場合は、Oracle WebCenter Framework開発者ガイドのセキュリティの章を参照してください。特に、ポートレットのパーソナライズをテストするための基本認証の構成を参照してください。
注意: 通常のパーソナライズではポートレット・タイトルを設定します。 |
isPreviewModeAvailable
|
|
ポートレット・コンテンツをプレビューできます。WebCenterアプリケーションにおいて特別なアプリケーションではありませんが、OracleAS Portalのポートレット・リポジトリではポートレットをプレビューするためにクリックする拡大鏡アイコンとしてレンダリングされ、使用されます。 |
isPrintModeAvailable
|
デフォルト: |
WebCenterアプリケーションでは、JSR 168ポートレットの「アクション」メニューに「印刷」コマンドがレンダリングされ、ポートレットのプリンタ用のバージョンが表示されます。 |
isSeededInteractionAvailable
|
|
ポートレットに「最大化」、「移動」、「最小化」をユーザーに対して表示できるようにします。属性を カスタム相互作用はこの属性設定の影響を受けません。 |
開発環境のニーズに合うように、portlet
コンポーネント(およびshowDetailFrame
コンポーネント)の「最小化」、「最大化」、「リストア」、「移動」アクションの動作は、設計時および実行時で異なります。設計時では、これらのアクションは特定のOC4Jセッションでは維持されますが、セッションを超えては維持されません(セッションとは、OC4Jの開始と停止の間の時間を意味します)。実行時では、特定のOC4Jセッションおよびセッション間でもこれらのアクションは維持されます。
この違いは、設計時のアプリケーション・ページの自動リセットを可能にするために導入されました。
実行時においてセッション間でアクションを維持することが不要な場合は、アプリケーションのweb.xml
ファイルへの単純な変更はオフにできます。アプリケーションのweb.xml
ファイルにある次のパラメータ設定を参照してください。
<context-param>
<param-name>oracle.adf.view.faces.CHANGE_PERSISTENCE</param-name>
<param-value> oracle.adfinternal.view.faces.change.HybridChangeManager </param-value>
</context-param>
これを次のように置換します。
<context-param>
<param-name>oracle.adf.view.faces.CHANGE_PERSISTENCE</param-name>
<param-value> oracle.adf.view.faces.change.SessionChangeManager</param-value>
</context-param>
アプリケーションにセキュリティを実装すると、「最小化」、「最大化」、「リストア」、「移動」アクションはカスタマイズ権限を持つユーザーにのみ表示されます。パーソナライズ権限を持つユーザーには表示されません。カスタマイズ権限を持つユーザーは設計時に次のステップを実行することで、これらのアクションの効果をテストできます。
属性 | 値 | 説明 |
---|---|---|
contentInlineStyle
|
CSSスタイルの名前 |
ポートレット・コンテンツに適用されるCSSスタイルです。
少なくともCSS 2.0に準拠した属性を手動で入力します。この属性では
たとえば、
|
inlineStyle
|
CSSスタイルの名前 |
ポートレットに適用されるCSSスタイルです。このノードを開いて、背景色、フォント、マージンなどの特定のスタイル要素に対するスタイルを指定します。
指定した属性の他にも、プロパティ・インスペクタの属性リストに表示されない
|
rendered
|
true/false デフォルト: true
|
コンポーネントをレンダリングするかどうかを指定します。false に設定すると、出力がレンダリングされません。
|
属性 | 値 | 説明 |
---|---|---|
allModesSharedScreen
|
|
ポートレット・モードの変更を新しいページに新しいモードでレンダリングするかどうかを決定します。ポートレットが存在するページを除外する場合は
|
background
|
デフォルト: |
異なるルック・アンド・フィールをアプリケーション・ページ上の各ポートレットに適用できます。デフォルトのスキンはOracle、MinimalおよびSimpleであり、カスタム・スキンにはlight、mediumおよびdarkという3つのバージョンのスタイル・セレクタがあります。 詳細は、Oracle WebCenter Framework開発者ガイドを参照してください。 |
displayHeader
|
|
ポートレットのヘッダーを表示するかどうかを表します。
|
expansionMode
|
|
ポートレットのデフォルトの状態です。次の中から選択します。
|
displayScrollBar
|
|
コンテンツが指定した
|
renderPortletInIFrame
|
true/false/auto デフォルト: auto
|
ポートレットを
詳細は、iframesおよびformタグを参照してください。 |
JavaServer Facesページで生成されたHTMLソースにはform
タグが含まれます。ネストされたform
タグはHTMLでは許可されないため、ポートレットは同じページで新しいフォームを開くことができません。
この問題を回避する最もよい方法は、iframe
内でポートレットをレンダリングすることです。これはrenderPortletInIFrame
属性をtrue
またはauto
に設定することで実行できます。true
値は常にiframe
を使用します。auto
値では、Oracle WebCenter Frameworkによりポートレットにform
要素が含まれるかどうかがチェックされ、含まれる場合はこれをiframe
内でレンダリングします。
たとえば、事前構成済のOC4JのWSRPサンプル・プロデューサが用意されているアップロード・ポートレットでは正しく実行するためにiframe
が必要です。renderPortletInIFrame
をtrue
またはauto
に設定しても、iframe
内に配置しなかった場合は、ポートレットが機能しません。
注意: ポートレットをiframe
内でレンダリングすると、window.location
の操作により予期しない結果をもたらすことがあります。ポートレットがwindow.location
を使用する場合は、ポートレットが自身をiframe
内でレンダリングする場合でも処理できるくらいJavaScriptが堅牢であることを確認する必要があります。
または、ポートレットのマークアップのform要素を除外するためにポートレットを書き直すことができます。ただし、この方法は面倒であり、すべての場合に適用できるわけではありません。
Copyright © 1997, 2007, Oracle. All rights reserved.