基於XML配置方式實現對action的全部方法進行校驗

使用基於XML配置方式實現輸入校驗時,Action須要繼承ActionSupport,而且提供校驗文件,校驗文件和action類放在同一個包下,文件的取名格式爲:ActionClassName-validation.xml,其中ActionClassName爲action的簡單類名,-validation爲固定寫法。若是Action類爲org.struts2.action.UserAction,則該文件應命名爲:UserAction-validation.xml。校驗文件的模板以下: css

<?xml version="1.0" encoding="UTF-8"?> ui

<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.3//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">                                                     <validators>     spa

    <field name="username"> xml

            <field-validator type="requiredstring"> 繼承

                    <param name="trim">true</param> 資源

                    <message>用戶名不能爲空</message> 字符串

            </field-validator> string

     </field> io

</validators> 模板

在validators下能夠出現兩個元素:validator   field;如果field則表示字段優先,將使用字段校驗器配置風格;若爲validator則使用非字段校驗器配置風格.

<filed>指定action中要校驗的屬性,<field-validator>指定校驗器,上面指定的校驗器requiredstring是由系統提供 的,系統提供了能知足大部分驗證需求的校驗器,這些校驗器的定義能夠在xwork-2.x.jar的com.opensymphony.xwork2.validator.validators下的default.xml中找到。

<message>爲校驗失敗後的提示信息,若是須要國際化,能夠爲message指定key屬性,key的值爲資源文件中的key,在這個校驗文件中,對action中字符串類型的username屬性進行驗證,首先要求調用 trim()方法去掉空格,而後判斷用戶名是否爲空。

在作完以上處理後,還得在相應界面加上:<s:fielderror name="xx" cssStyle="color.red" />,這樣,便會輸出紅色錯誤提示信息。

相關文章
相關標籤/搜索