Form コンポーネントを使用して Object の値を編集しています。オブジェクトの値がフォームに表示され、更新が自動的に適用されるように、LoadableDetachableModel を使用してオブジェクトをフォームにマップしました。
final Form<Withdrawal> form = new Form<Withdrawal>("form",
new CompoundPropertyModel<Withdrawal>(ldm)) {
.... }
ただし、StringValidator などのフォーム コンポーネントにバリデータをテキスト フィールドに追加する際に問題があります。「コメント」フィールド (取消オブジェクトのフィールドの 1 つ) があります。
理想的には、次のように追加したい:
TextField<Withdrawal> tf_comments = new TextField<Withdrawal>("comment");
tf_comments.add( new StringValidator.MaximumLengthValidator(255));
form.add( tf_comments);
StringValidator
しかし、 forTextField<Withdrawal>
が定義されていないため、 StringValidators を追加することはできません。そのため、以下を使用してフィールドの値を取得し、手動でオブジェクトに設定しています。
TextField<String> tf_comments = new TextField<String>("comment");
tf_comments.add( new StringValidator.MaximumLengthValidator(255));
form.add(tf_comments);
Validatorを に直接追加する方法はありTextField<Withdrawal>
ますか?
ありがとうございました。