JavaServer Faces 標準のドロップダウンリストコンポーネント
を「パレット」の「標準」カテゴリからビジュアルデザイナーにドラッグすることによって、ユーザーがドロップダウンリストをクリックするとリストから項目を選択できるドロップダウンリスト (またはコンボボックス) を作成できます。
ドロップダウンリストは、最初は 1 つの項目として表示され、クリックすると、複数の項目を含むドロップダウンリストが表示される項目リストです。一度に 1 つの項目だけ選択できます。ドロップダウンリストは、Swing および Microsoft Windows のコンボボックスと同じで、HTML では選択リストといいます。
ドロップダウンリストとは複合コンポーネントです。囲みコンポーネント (dropdown) はリストそのもののスタイルと動作を管理し、内部コンポーネント (dropdownSelectItems) は、リスト内の実際の項目へのバインドに使用されます。3 つ目の関係コンポーネント (dropdownDefaultItems) は、ページに追加したドロップダウンリストコンポーネントごとに 1 つ作成され、リストの静的デフォルト項目 (項目 1、項目 2、項目 3) からなる配列を含みます。一般には、この最後のコンポーネントは操作しません。ドロップダウンリストをページに追加すると、「ナビゲータ」ウィンドウでこれらのすべてのコンポーネントを確認できます。
ドロップダウンリストは、HTML では、size=1 属性を持つ <select> タグになります。
ドロップダウンリストの「value」プロパティーは画面上に描画されず、フォームの送信時に使用されます。「value」プロパティーは、現在選択されているリスト要素を参照します。コンポーネントに表示されるリストは、コンポーネントの dropdownSelectItems の部分で制御されます。
ドロップダウンリストコンポーネントを Visual Web JSF ページに追加すると、次の操作を実行できます。
id 属性の値になります。ページ Bean では、このプロパティーの値が HtmlSelectOneMenu オブジェクトの名前になります。dropdownSelectItems の部分で制御されます。コンポーネントの dropdownSelectItems の部分を設定する一般的な方法については、このあとの「データベースからリストを生成」を参照してください。validate メソッド内にカーソルが置かれた状態で Java エディタが開き、このコンポーネントの値の妥当性を検査するコードを挿入できます。processValueChange メソッド内にカーソルが置かれた状態で Java エディタが開き、このコンポーネントの値に変更があったとき (たとえば、このコンポーネントの値を制御する別のコンポーネントの値をユーザーが変更したとき) に実行するコードを挿入できます。value」プロパティーをオブジェクトまたはデータプロバイダにバインドします。 common_timeoutSubmitForm(this.form, '<コンポーネント ID>'); に設定されます。このコードによって、実行時にユーザーがコンポーネントの値を変更した場合に自動的にフォームが送信されます。フォームが送信されたら、サーバーで変換と妥当性検査が行われ、値変更のリスナーメソッドがある場合はそのメソッドが実行されてから、ページが再表示されます。
「変更時に自動送信」が設定されているコンポーネントには、仮想フォームを使用して、フォームの送信時に処理される入力フィールドを制限できます。自動送信するコンポーネントを、仮想フォームを送信するように定義した場合、自動送信時には仮想フォームに含まれるフィールドだけが処理されます。