チェックボックスグループコンポーネント
を「パレット」の「Woodstock 基本」カテゴリからビジュアルデザイナーにドラッグすることによって、ラベル付きのチェックボックスグループを 1 つ作成できます。
チェックボックスは、HTML の <table> 要素で表形式で描画されます。行数は、チェックボックス数で定義します。列数は、「columns」プロパティーで定義します。デフォルトのレイアウトは 1 列です。1 行に複数のチェックボックスを配置するには、「columns」プロパティーをチェックボックス数に設定します。
「items」プロパティーは、配列かリスト、またはそのリストを埋める com.sun.webui.jsf.model.Option のコレクションにバインドされます。このプロパティーを設定するには、コンポーネントを右クリックし、「データにバインド」を選択します。には、リストの生成にデフォルトで使用される、checkboxGroup1DefaultOptions というような名前のオブジェクトが表示されます。オプションのラベルはチェックボックスのラベルになります。ユーザーがチェックボックスを選択すると、そのコンポーネントの「selected」プロパティーに、その選択された値からなる配列が含まれます。
「selected」プロパティーを設定して、コンポーネントを、ユーザーが選択したリスト項目を表すモデルオブジェクトに関連付けます。モデルオブジェクトは、値が、リスト内の com.sun.webui.jsf.model.Option オブジェクトの値を表すオブジェクトの配列である必要があります。コンポーネントがはじめて描画されたとき、「selected」プロパティーの値に対応するオプションがある場合は、そのオプションが選択状態で示されます。
コンポーネントをオブジェクトにバインドしてリストを設定する方法については、このあとの「データにバインド」の項を参照してください。
コンポーネントをビジュアルデザイナーにドラッグすると、次の操作を実行できます。
validate メソッド内にカーソルが置かれた状態で Java エディタが開き、このコンポーネントの値の妥当性を検査するコードを挿入できます。processValueChange メソッド内にカーソルが置かれた状態で Java エディタが開き、このコンポーネントの値に変更があったとき (たとえば、このコンポーネントの値を制御する別のコンポーネントの値をユーザーが変更したとき) に実行するコードを挿入できます。common_timeoutSubmitForm(this.form, '<コンポーネント ID>'); に設定されます。このコードによって、実行時にユーザーがコンポーネントの値を変更した場合に自動的にフォームが送信されます。フォームが送信されたら、サーバーで変換と妥当性検査が行われ、値変更のリスナーメソッドがある場合はそのメソッドが実行されてから、ページが再表示されます。
「変更時に自動送信」が設定されているコンポーネントには、仮想フォームを使用して、フォームの送信時に処理される入力フィールドを制限できます。自動送信するコンポーネントを、仮想フォームを送信するように定義した場合、自動送信時には仮想フォームに含まれるフィールドだけが処理されます。
「データにバインド」ダイアログで説明しているように、コンポーネントの「items」プロパティーをオブジェクトまたはデータプロバイダにバインドします。
items」プロパティーをオブジェクトにバインドするには、「オブジェクトにバインド」タブを選択し、リストの生成に使用する Bean プロパティーを選択します。この Bean プロパティーは、メンバーがすべて com.sun.webui.jsf.model.Option のサブクラスである Object 型の配列、マップ、またはコレクションである必要があります。
items」プロパティーを、リストの生成に使用するデータベース表または JavaBeans オブジェクトのデータプロバイダにバインドするには、「データプロバイダにバインド」タブを選択し、データプロバイダを選択します。selected」プロパティーを Object 配列、またはプリミティブの配列にバインドします。配列をプロパティーとしてセッション Bean などの管理 Bean に追加している必要があります。この Bean プロパティーを使用して、ページ送信後にユーザーの選択内容を評価できます。checkboxGroup#DefaultOptions オブジェクトを編集し、表示されるチェックボックスを変更できます。通常は、上記の「データにバインド」の項で説明したように、「items」プロパティーを、使用するデータベースまたはオブジェクトにバインドして、チェックボックスのリスト項目を設定します。 id 属性の値になります。ページ Bean では、このプロパティーの値が CheckboxGroup オブジェクトの名前になります。for」プロパティーには、グループ内の最初のチェックボックスが設定されます。label」プロパティーで指定されたラベルのスタイルレベルを設定します。値には、「強 (1)」、「中 (2)」、「弱 (3)」が設定できます。デフォルト値は「中 (2)」です。