[筆記]Struts2的服務器端驗證框架的使用

更詳細的內容請參考Struts2的官方文檔和源代碼...

注:1.對於Action類中的簡單屬性,可直接使用單獨的、與action同層的XXXAction-validation.xml配置文件便可!(簡單屬性包括基本類型和String等等)
2.對於Action類中的複雜屬性,採用visitor驗證方式,須要同時編寫與action同層的XXXAction-validation.xml文件 和 與該屬性對應的model層的實體類同層的XXX-validation.xml文件!框架

------------------------無聊的分隔線------------------------xml

這裏只講述複雜屬性的visitor驗證方式。文檔

1. XXXAction類中的複雜屬性必需要有getter訪問器方法。get

2. XXXAction-validation.xml必須在項目編譯後與對應的Action類在同一目錄中。input

3. XXXAction類的複雜屬性對應的實體類的驗證文件必須在項目編譯後與實體類在同一目錄中,而且實體類驗證
文件的命名要符合:實體類名-validation.xml。workflow

4. 要在struts.xml配置文件中使用validation攔截器和workflow攔截器(使用workflow攔截器是爲了在validation 攔截器中出現驗證失敗後流程再也不繼續往下走,而是返回定義的INPUT視圖)。若要忽略某些方法不作驗證(如那些不作保存的方法list、input、 delete等),則在struts.xml文件的validation和workflow攔截器的配置處加上
excludeMethods參數列表去忽略這些方法便可!it

------------------------無聊的分隔線------------------------io

!!!若是在運行時驗證框架沒有生效,然後臺報以下:
"WARN  [com.opensymphony.xwork2.validator.validators.VisitorFieldValidator] - The visited object is null, VisitorValidator will not be able to handle validation properly. Please make sure the visited object is not null for VisitorValidator to function properly"
這樣的警告信息,請仔細檢查代碼和配置是否符合以上幾點!編譯

相關文章
相關標籤/搜索