Fork me on GitHub
<< back to Core Developers Guide Edit on GitHub

stringlength validator

Description

StringLengthFieldValidator checks that a String field is of a certain length. If the minLength parameter is specified, it will make sure that the String has at least that many characters. If the maxLength parameter is specified, it will make sure that the String has at most that many characters. The trim parameter determines whether it will String#trim() the String before performing the length check. If unspecified, the String will be trimmed.

Parameters

Warning Do not use ${minLengthExpression}, ${maxLengthExpression} and ${trimExpression} as an expression as this will turn into infinitive loop!

Examples

<validators>
    <!-- Plain Validator Syntax -->
    <validator type="stringlength">
        <param name="fieldName">myPurchaseCode</param>
        <param name="minLength">10</param>
        <param name="maxLength">10</param>
        <param name="trim">true</param>
        <message>Your purchase code needs to be 10 characters long</message>
    </validator>
 
    <!-- Field Validator Syntax -->
    <field name="myPurchaseCode">
        <field-validator type="stringlength">
             <param name="minLength">10</param>
             <param name="maxLength">10</param>
             <param name="trim">true</param>
             <message>Your purchase code needs to be 10 characters long</message>
        </field-validator>
    </field>
 
    <!-- Field Validator Syntax with expression -->
    <field name="myPurchaseCode">
        <field-validator type="stringlength">
             <param name="minLengthExpression">${minLengthValue}</param> <!-- will be evaluated as: Integer getMinLengthValue() -->
             <param name="maxLengthExpression">${maxLengthValue}</param> <!-- will be evaluated as: Integer getMaxLengthValue() -->
             <param name="trimExpression">${trimValue}</param> <!-- will be evaluated as: boolean getTrimValue() -->
             <message>Your purchase code needs to be 10 characters long</message>
        </field-validator>
    </field>
</validators>