5

私は Struts2 と OGNL を初めて使用し、登録ページを持つ単純な Web アプリケーションを作成しています。2 つのフィールドがありpasswordrepassword(パスワードを再入力するために) 検証フレームワークを使用して、2 つのパスワードが一致することを検証したいと思います (JavaScript で簡単に実行できることがわかっています)。これが私がこれまでに得たものです。フィールドバリデーターはすべて正常に動作しています。これは私の最初のフィールド以外のバリデータであり、動作させることができません。

<validator type="expression">
    <param name="expression">${password}!=${repassword}</param>
    <message>Passwords must match.</message>
</validator> 

私は両方を試しました

${password}!=${repassword}

そしてなし

password!=repassword

OGNL タグ。

4

2 に答える 2

3

expressionバリデーターは、非フィールド レベルのバリデーターです。fieldexpressionフィールド レベルのバリデーターであり、OGNL 式を使用して検証するバリデーターを使用します。そして、等号 ( ==) チェックでなければなりません。

<field name="password">
  <field-validator type="fieldexpression">
    <param name="expression"><![CDATA[password == repassword]]></param>
    <message>Passwords must match.</message>
  </field-validator>
</field>

expressionバリデータはアクション エラーを追加します。fieldexpressionバリデータはフィールド エラーを追加します。

于 2013-03-01T09:04:08.967 に答える
2

試す

%{password == repassword}

バリデーターは、両方が等しいブール値の OGNL 式をチェックします。

于 2013-02-28T22:55:37.703 に答える