Validator框架預設使用Struts訊息資源中的key-value訊息,您可以查看struts- blank中的application.properties,當中有關於validator訊息的部份就是Validator預設使用的:
# -- validator -- 
errors.invalid={0} is invalid.
errors.maxlength={0} can not be greater than {1} characters.
errors.minlength={0} can not be less than {1} characters.
errors.range={0} is not in the range {1} through {2}.
errors.required={0} is required.
errors.byte={0} must be an byte.
errors.date={0} is not a date.
errors.double={0} must be an double.
errors.float={0} must be an float.
errors.integer={0} must be an integer.
errors.long={0} must be an long.
errors.short={0} must be an short.
errors.creditcard={0} is not a valid credit card number.
errors.email={0} is an invalid e-mail address.
      
 errors.invalid={0} is invalid.
errors.maxlength={0} can not be greater than {1} characters.
errors.minlength={0} can not be less than {1} characters.
errors.range={0} is not in the range {1} through {2}.
errors.required={0} is required.
errors.byte={0} must be an byte.
errors.date={0} is not a date.
errors.double={0} must be an double.
errors.float={0} must be an float.
errors.integer={0} must be an integer.
errors.long={0} must be an long.
errors.short={0} must be an short.
errors.creditcard={0} is not a valid credit card number.
errors.email={0} is an invalid e-mail address.
Struts支援國際化訊息,Validator同樣也支援國際化訊息,您可以在<formset>上使用language、country 等屬性來指定所要使用的國際化訊息,當然您必須為每一個國際化訊息提供對應的訊息資源檔:
    <formset> 
....
</formset>
      
<formset language="zh">
....
</formset>
      
 
      ....
</formset>
<formset language="zh">
....
</formset>
每一個<formset>相對於一個訊息對應,language設定為zh,表示使用application_zh.properties檔 案中的訊息,如果沒有設定,就使用預設的Locale設定。
Validator預設會使用一些key-value訊息對應,您也可以使用自訂的訊息來顯示驗證訊息,例如:
- validation.xml
... 
        <form name="userForm"> 
            <field 
                property="name" 
                depends="required,mask"> 
                <msg 
                    name="mask" 
                    key="logon.username.maskmsg"/> 
                <arg0 key="logon.username.displayname"/> 
                <var> 
                    <var-name>mask</var-name> 
                    <var-value>^[a-zA-Z0-9]*\$</var-value> 
                </var> 
            </field> 
        </form>
... 
假如您在application.properties中有這麼一個key-value對應:
logon.username.maskmsg={0} must be letters and numbers, no spaces.
      
      
      
則這個訊息會替換errors.invalid中的訊息(mask驗證器預設查找的key-value對應),此時<
arg0>會替換{0}中的部份,當然logon.username.displayname在application.properties中也
必須有設定。 

