MyEclipse 6.0 GA for eclipse 3.3已經正式發布了,但還不支持struts2。我還是先用著5.5GA吧。
struts1里面的ActionForm有分ActionForm和DynaActionForm,如果需要使用Validator的話,也有分為ValidatorForm,ValidatorActionForm,DynaValidatorForm,DynaValidatorActionForm幾種。一般用得比較多的是Dyna的Form,而其中又以Validator使用較為普遍。我都試過用,其中DynaValidatorForm和DynaValidatorActionForm比較容易混淆。
用簡單的話說,這2者寫法上的區別在于這3個地方:
1)struts-config.xml:ActionForm type應分別為org.apache.struts.validator.DynaValidatorForm和org.apache.struts.validator.DynaValidatorActionForm
2)Action里的分別使用為:DynaActionForm addLoginMemberForm = (DynaActionForm) form;和DynaValidatorActionForm addOrdersForm = (DynaValidatorActionForm) form;
3)validation.xml里:DynaValidatorForm引用form的方法是如addLoginMemberForm,用名稱,而DynaValidatorActionForm是使用spring里注冊的action路徑:/addOrders
很多時候將一個ActionForm公用到多個Action上(兩者通過name屬性來關聯),這時麻煩出來了.由于不同業務處理對數據的有效性驗證的要求略有不同,這對處理數據驗證的validator框架提供了一個要求----如何根據不同的業務請求,對同一個ActionForm進行不同的數據驗證了?
使用DynaValidatorActionForm,校驗是根據action元素的path屬性值來區分FormBean,而action元素的path屬性值正是不同action區分的唯一標記,這樣根據不同的action我們對同一個ActionForm給出不同的驗證規則了。
posted on 2007-08-25 09:17
lzj520 閱讀(417)
評論(0) 編輯 收藏 所屬分類:
Struts1 、
個人學習日記