JSF リンクのターゲットの変更
JSF ハンドラーから、JavaServer Faces (JSF) リンクの target 属性を変更することができます。例えば、リンクの target 属性を _blank に設定すると、そのリンクを新規ブラウザー・ウィンドウで開くことができます。
このタスクには、次のような前提条件があります。
- ご使用の EGL Web プロジェクトに、JSF コンポーネント・インターフェースのサポートがなければなりません。 EGL Web プロジェクトへの JSF コンポーネント・インターフェース・サポートの追加を参照してください。
- この Web ページに関連付けられている JSF ハンドラーには、次の import 文が含まれている必要があります。
import com.ibm.egl.jsf.* - UIViewRoot 型の変数を、JSF ハンドラー内で宣言する必要があります。
- JSF ハンドラー・プロパティー viewRootVar で、UIViewRoot 変数の名前を指定する必要があります。
JSF ハンドラーから、JSF リンクの target 属性を変更するには、以下のステップを実行します。
- JSF ハンドラーの関数内のブランク行で、Ctrl+Shift+Z を押す。 ページ上の JSF コントロールを表示する「EGL ソース・アシスタント」ウィンドウが開きます。
- 「EGL ソース・アシスタント」ウィンドウで、アクセスしたい JSF コントロールを選択する。
- 「OK」をクリックします。
EGL ソース・アシスタントが、2 行の EGL コードを JSF ハンドラーに追加します。第 1 行では、選択した JSF リンクに一致する型の EGL 変数が 定義されます。第 2 行では、その変数が JSF リンクに関連付けられます。 例えば、このコードは次のようになります。
linkEx1 HtmlOutputLink; linkEx1 = myViewRoot.findComponent("form1:linkEx1"); - ソース・アシスタントで作成した EGL 変数を使用して、setTarget() 関数でリンクのターゲットを変更する。例えば、
リンクを新規ウィンドウで開くようにするには、次のコードを追加します。
linkEx1.setTarget("_blank");