JSF アクションを使用しない JSF ポートレット・ページの変更

Faces ポートレットのページは、Faces アクション結果およびナビゲーション規則を使用して変更することができます。

Faces アクションを使用せずにページを変更する場合は、 JSP ファイル・パスを次のセッション属性のいずれかに設定します。

表 1. JSP セッション属性に対応するファイル・パス
セッション属性名 説明
com.ibm.faces.portlet.page.view 表示モードの JSP ファイル・パス。
com.ibm.faces.portlet.page.edit 編集モードの JSP ファイル・パス。
com.ibm.faces.portlet.page.help ヘルプ・モードの JSP ファイル・パス。
com.ibm.faces.portlet.page.config 構成モードの JSP ファイル・パス。
例えば、Faces ポートレットのサブクラスを作成し、doView() メソッドでセッション属性を設定して一定の条件でページを変更することができます。
public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException {
		if (...) {
			request.getPortletSession().setAttribute("com.ibm.faces.portlet.page.view", "/MyPage.jsp");
		}

		super.doView(request, response);
	}

セッション属性が有効なのは、 Faces ライフ・サイクルが、processAction()、actionPerformed()、doView() などの Faces ポートレットのメソッドによって開始される前のみであることに注意してください。 Faces ライフ・サイクルが開始し、Faces UI コンポーネント・ツリーが作成されると、 セッション属性は Faces ポートレットで読み取られません。

関連概念
Faces コンポーネントを使用した動的データ
Faces ポートレットとプロジェクトの作成
関連タスク
Faces ポートレット JSP ファイルの作成
既存の IBM ポートレットの Faces ポートレット・モードの追加と更新
既存の JSR 168 ポートレットの Faces ポートレット・モードの追加と更新

(C) Copyright IBM Corporation 2002, 2005. All Rights Reserved.