私のフォームに条件付きでバリデーションしたいフィールドが2つあります(別のフィールドに特定の値がある場合は、バリデーションしたい、そうでない場合はバリデーションしたくありません)。ここでStruts2の条件付きバリデーション
が私の現在のxmlです:
<field name="effectiveDate">
<field-validator type="fieldexpression">
<param name="expression">childReason not in {1} or effectiveDate.length() gt 9</param>
<message key="validation.effectiveDate.entered" />
</field-validator>
</field>
(同様の質問が示唆するように)
は当初、私は、しかし、私が何を(私が思う)EL申し出以上のものを必要とする、これを行うには、フィールドの式を使用して、計画しました
しかし、フィールドの長さを単純にチェックするのではなく、regexを使って日付が有効であることを確認します。さらに、将来の日付や今日の日付よりも1年古い日付を入力しないようにしたい。
基本的にはカスタムバリデーターを使用したいと思いますが、ELという式でこれらのことを確認できる方法を呼び出しています。
'validateXXX'メソッドを使って動作検証するか、カスタムバリデータを作成してください。 –
@AleksandrMは私が受け入れることができるようにその答えを作りたいですか?ありがとう。 – Othya