JSF ボタンの関数へのバインディング

JSF ハンドラーの関数に JSF ボタンをバインドすると、ユーザーがボタンをクリックしたときに、その関数が実行されます。

Web ページからコマンドを受け入れるには、最初に関数を書いて、その関数をボタンにバインドするという方法が、もっとも簡単です。

  1. EGL Web プロジェクトで Web ページを作成します。
  2. そのページの JSF ハンドラーで、関数を作成します。 この時点で必要なのは、バインディングを行うための基本的な関数だけです。 関数のロジックについては、あとでコーディングできます。
  3. JSF ハンドラーを保存します。
  4. 関連付けされた JSP ファイルを開きます。
  5. 「パレット」ビューの「拡張 Faces コンポーネント」ドロワーから、「ボタン - コマンド」をページにドラッグします。
  6. ページ・データ・ビューで、「JSF ハンドラー」 を展開します。 JSF ハンドラーの関数と変数が、ここにリストされます。
  7. 「ページ・データ」ビューから、ページに追加したボタンに対して、関数を直接ドラッグします。

    関数がボタンにバインドされます。

これ以外の方法として、Web ページでの作業中に、「クイック編集」ビューから関数をコーディングするという方法もあります。
  1. JSP ファイルを開きます。
  2. 「パレット」ビューの「拡張 Faces コンポーネント」ドロワーから、「ボタン - コマンド」をページにドラッグします。
  3. ボタンを右クリックして、次に「イベントの編集」をクリックします。 「クイック編集」ビューが開きます。通常、このビューは JavaScript コード用のものですが、このビューを使用して JSF ハンドラーの関数を書くこともできます。
  4. 「クイック編集」ビューの左側にある「コマンド」をクリックします。
  5. 「クイック編集」ビューの右方の領域をクリックして、そこをフォーカスします。実際に JSF ハンドラーに入っている新規の EGL 関数が、このビューに表示されます。
  6. 新規の関数に EGL ステートメントを入力します。「クイック編集」ビューの関数では、少なくともコメントを追加する必要があります。 関数のコードが変更されなかった場合、その関数を不要なものとエディターが判断し、関数が除去されてしまいます。

制限

ページ上のコマンド要素は、JSF ハンドラー内の関数に対してのみバインドすることができます。 その他の論理パーツ (ライブラリーなど) の関数にはバインドできません。 また、バインドできる関数は、パラメーターのないものだけです。 関数の実行時に入力が必要となる場合は、JSF ハンドラーに変数を作成し、その変数をページ上の入力コントロールにバインドしてください。 これによって、関数呼び出しのパラメーターとして、その変数を使用できるようになります。

<form> タグ内のボタンおよびコントロールのロケーションに関する制限事項については、Web ページ上のコントロールの変数へのバインディングも参照してください。


フィードバック