JSF の forward に関する考慮事項
JSF のコンテキストでは、EGL forward ステートメントは、Web ページにコントロールを渡すため、または Web プロジェクトの Faces 構成ファイル内のナビゲーション規則にコントロールを渡すために使用されます。 Faces 構成ファイルには、規則と、それらの規則が指し示すページがリストされています。 規則では、JSF ハンドラーに転送する場合、この規則の名前は JSF ハンドラーの名前と同じになります。 ナビゲーション規則は、サーブレット、Web ページ、または Java™ プログラムに対して示されている場合もあります。 詳しくは、ナビゲーション規則に基づく Web ページ間のナビゲートを参照してください。
forward 文は、次のアクションを実行します。
- リカバリー可能リソースのコミット、ファイルのクローズ、およびロックの解除
- 指定されたナビゲーション規則にコントロールを移動させる。
- forward 文を実行しているコードを終了する。
JSF ハンドラーの onConstructionFunction プロパティー、onPreRenderFunction プロパティー、または onPostRenderFunction プロパティーで定義された関数では、 forward to URL を使用することはできますが、forward to label は使用できません。
構文

- parameter
- JSF ハンドラーまたは他のページやプログラムに渡される変数。 パラメーターとその対応する引数の名前は、いずれの場合にも同じでなければなりません (この名前は、Web アプリケーション・サーバーに引数値を保存し、それを取り出すときのキーとして使用されます)。 ページ・ハンドラーに渡すパラメーターには、JSF ハンドラーの onConstructionFunction プロパティーに指定された関数の引数との互換性が必要です。 リテラルを渡すことはできません。
- navigationRule
- Faces 構成ファイル (faces-config.xml) のナビゲーション規則を指定します。 この規則を指定すると、呼び出すオブジェクトが、JSP (通常は、EGL JSF ハンドラーに関連付けられているもの)、EGL プログラム、EGL 以外のプログラム、またはサーブレットのいずれであるかを識別します。 label という語はオプションで、navigationRule はテキスト式です。
- pageURL
- URL を指定し、呼び出し先の JSF ハンドラー、VGWebTransaction プログラム、またはサーブレットで使用する値のストリングを (必要に応じて) 指定します。pageURL はテキスト式です。URL が絶対である (ドメイン名を含む) 場合は、EGL は forward ステートメントを HTTP リダイレクトとして実装します。URL が相対である (同じサーバー上にある) 場合は、以下の例に示すように、式に -redirect キーワードが含まれている場合を除き、EGL は forward ステートメントを HTTP ディスパッチとして実装します。
forward to URL "/TestProject/TestPage2.html -redirect";
例
以下の例では、Faces 構成ファイルの「myPage」という名前のナビゲーション規則にコントロールを移動しています。
次に、この規則は、コントロールを受け取る myPage.jsp という名前の JSP ハンドラーをポイントします。
forward to label "myPage";