いくつかの型の選択リスト・コンポーネントを Faces JSP ページで使用することができます。
コンボ・ボックス、リスト・ボックス、ラジオ・ボタン、
およびチェック・ボックスをユーザーのページにドラッグしてから、
動的にデータ・ソースにバインドすることができます。
その他の詳細:
動的な値の場合、選択項目のリストは 1 つまたは複数の selectitem
または selectitems タグによって生成されます。
selectitems タグの value 属性は、
選択項目を含むデータ要素を指し示します。
selectitems タグでは、以下のいずれかのフォームのデータを想定しています。
- javax.faces.component.SelectItem メンバー・オブジェクトの java.util.Collection。
SelectItem クラスでは、個々の選択項目に対するラベル、値、および説明を保持する簡易コンテナーを定義します。
- javax.faces.component.SelectItem の配列。
その他のデータ型の場合、ツールは
value を生成して、
データをこれらの必要なフォームのいずれかに変換します。
value のフォームは
selectitems.bean.label.value.toArray のようになります。各部位の説明は以下のとおりです。
- selectitems は、この変換ケースを識別する特殊なキーワードです。
- bean は、データ・モデルにおける JavaBean 型の要素を示します。
この要素は、aaa.bbb.ccc のようなマルチレベル参照になっている場合があり、
コレクション型などの任意のオブジェクトを解決できます。
- label は、bean で示されるオブジェクトのプロパティーです。
このプロパティーの値が、選択項目として表示されます。
- value は bean のもう 1 つのプロパティーであり、
選択された項目と一緒に設定されます。
デフォルトでは、label と同じになります。
- toArray は、特殊な参照ストリングを終了させるキーワードです。
「ページ・データ」ビューからバインドするときに、フィールドを個別に選択すると、
ラベルと値の両方に同じフィールドを使用する
value が必ず作成されます。
UI ラベルと渡される値に異なるストリングを使用するには、上記のパターンに従って
手動で
value を修正します。
selectitems タグの
value 属性の例を以下に示します。
- myBean.choices は、myBean という名前の Bean から
SelectItem[] プロパティー choices をバインドします。
- selectitems.EMPLOYEES.NAME.NAME.toArray は、
EMPLOYEES という名前のデータ・リストから
ストリング・プロパティーの NAME をバインドします。
- selectitems.anotherBean.choices.choices.toArray は、
anotherBean という名前の JavaBean から
choices という名前のストリング配列をバインドします。
- selectitems.EMPLOYEE.NAME.EMPID.toArray は、
選択された値の従業員 ID を使用して、EMPLOYEES
という名前のレコード・リストから従業員名を手動でバインドします。