Как проверить значение двух текстовых полей в файле Struts validation.xml? - PullRequest
0 голосов
/ 01 июля 2011

Я использую плагин Struts Jquery Ajax для проверки.Мне нужно для проверки двух текстовых полей MinAmt и MaxAmt.Мне нужно поставить подтверждение, что MaxAmt всегда больше, чем MinAmt.Для этого я делаю свой XML следующим образом.

<validator type="fieldexpression" short-circuit="true">
        <param name="fieldName">disSlab.maxAmt</param>
        <param name="fieldName">disSlab.minAmt</param>
        <param name="expression">disSlab.maxAmt.greaterThan(disSlab.minAmt)</param>
        <message>Not Valid Max Amt</message>
</validator>   

Но он не работает.Я прочитал простой пример здесь и в этом коде

<validator type="fieldexpression">
    <param name="fieldname">personBean.carModels</param>
    <param name="expression"><![CDATA[personBean.carModels.length > 0]]></param>
    <message>You must select at least one car model.</message>
</validator>

Это работает нормально.но может ли кто-нибудь предоставить мне выражение OGNL для большего, чем?

Ответы [ 2 ]

0 голосов
/ 28 июля 2011

Привет, наконец, я получил решение Если мы используем Бин и пытаемся проверить это поле, например, disSlab.maxAmt, оно не будет работать, но я изменил это поле на простой maxAmt, а затем применил этот код, чтобы он работал нормально ... Код такой ...

<validator type="expression" short-circuit="true" >
      <param name="expression">maxAmt gt minAmt</param>
      <message>maxVal must be great than minVal.</message>
    </validator>

Не знаю, почему это происходит ..

0 голосов
/ 01 июля 2011

Попробуйте:

<validator type="expression>
         <param name="expression">disSlab.maxAmt gt disSlab.minAmt</param>
         <message>disSlab.maxAmt must be great than disSlab.minAmt.</message>
</validator>

Для получения дополнительной информации см http://struts.apache.org/2.0.14/docs/validation.html#Validation-NonFieldValidatorVsFieldValidator

...