又是驗(yàn)證功能。。。現(xiàn)在似乎很怕這個(gè)功能。。以前學(xué)struts1時(shí)。。其實(shí)很簡(jiǎn)單的驗(yàn)證模塊花了我不少的時(shí)間。。現(xiàn)在學(xué)struts2也是一樣。。花了一個(gè)下午的時(shí)間才把struts2客戶(hù)端驗(yàn)證搞定。。
在上篇中實(shí)現(xiàn)了服務(wù)端驗(yàn)證后。。要實(shí)現(xiàn)客戶(hù)端驗(yàn)證就很簡(jiǎn)單。。。只要在form元素上加上validate=true就行。。另外,我也加入了國(guó)際化支持。
先說(shuō)說(shuō)遇到的問(wèn)題
1.在<s:form>中把a(bǔ)ction的屬性寫(xiě)在action="regist.action",導(dǎo)致struts2沒(méi)有進(jìn)行客戶(hù)端驗(yàn)證,就是提交給服務(wù)端處理了。。正確應(yīng)該是action="register".不要加.action .. 這個(gè)問(wèn)題花了我大半個(gè)下午才找出。。
2.因?yàn)閼卸璋?lt;s:textfield name="username" label="用戶(hù)名"/>就寫(xiě)在<s:textfield name="username" />沒(méi)有加上label屬性。。。運(yùn)行時(shí)就不停地彈出Object error對(duì)話(huà)框。。。
3.短路屬性short-circuit=true目錄只支持服務(wù)端驗(yàn)證。。還不支持客戶(hù)端。。。。所以不要驚訝在客戶(hù)提交時(shí)同一個(gè)域出現(xiàn)不止一條的提示信息。
代碼如下:
1.注冊(cè)頁(yè)面register.jsp

















2.ReigsterAction.java























































































4.Struts2的配置文件struts.xml





































