??????今天終于把Validator驗(yàn)證框架看的差不多了,自己想想也應(yīng)該寫個測試了,動手開始:
??????偶的IDE用的是EC+MyEC,一開始就遇到問題,IDE不熟悉。。。差點(diǎn)找不到validation.xml的DTD文件。。。開始的標(biāo)記全部自己手寫了一遍,后來在朋友的幫助下,終于找到了DTD文件。(自己手寫了一遍感覺要好很多,這樣才能更好的理解每個標(biāo)記的意義。。。強(qiáng)烈建議寫XML文件的時候,第一次最好手寫,而不要過分依賴IDE)
??????首先把validation-rules.xml文件從struts包中copy到WebRoot下面,創(chuàng)建validation.xml文件,然后在struts-config.xml文件中添加如下配置:
? <message-resources parameter="com.anita.struts.ApplicationResources" />
? ?<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
??????? <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
????????????????????????????????????????????????? /WEB-INF/validation.xml"/>
????? </plug-in>
注意位置哈:是在 <message-resources >標(biāo)記的后面,這是指定validator-rules.xml文件和validation.xml文件的位置,因?yàn)閂alidator框架是以插件的形式存在于Struts框架中的,故需要在服務(wù)器啟動時讀取文件,所以需要如此配置。
??????
??????然后編寫validation.xml文件(程序員的任務(wù))。(什么?有哪些標(biāo)記都不知道,那你還是先趕快看看書吧)
??????最后編寫struts-config.xml文件,在這里,有兩種選擇,ValidatorForm和ValidatorActionForm兩種FormBean,他們的區(qū)別在于:
??????采用ValidatorForm時,Struts配置文件<action>元素的name屬性與validation.xml文件中的<form>元素的name屬性相對應(yīng)。
??????采用ValidatorActionForm時,Struts配置文件<action>元素的path屬性與validation.xml文件中的<form>元素的name屬性相對應(yīng)。
以上兩種FormBean應(yīng)當(dāng)按照實(shí)際情況選用。
??????當(dāng)然一般情況下大家使用Validator框架,主要目的就是不創(chuàng)建太多的FormBean,所以在這里,我們建議使用DynaValidatorForm和DynaValidatorActionForm,他們用于生成動態(tài)配置表單。
??????DynaValidatorForm---------->ValidatorForm
??????DynaValidatorActionForm---------->ValidatorActionForm
HOHO以上只是偶在初步學(xué)習(xí)Validator驗(yàn)證框架時的一點(diǎn)心得,有更好的建議一定要提哦~~