天天看點

Struts在服務端驗證的問題和暫時解決方法

我們知道,如果ActionForm繼承了ValidatorForm,就可以在validate()方法裡進行資料驗證,其傳回是一個ActionErrors對象。但我發現,在驗證出無效的資料輸入後,由于Struts在傳回inputForward的時候隻會保留原先的ActionForm對象在request裡,是以如果我在Action裡曾手動向request裡setAttribute()過其他對象時,就會提示找不到那個對象。

目前的解決方法比較無奈,就是把原來放在request裡的對象改為放在session裡,但我擔心除非用完後馬上手動清除這個對象,否則會帶來很多不必要的麻煩。我自己是很不喜歡使用session對象的,特别是在Action到頁面的資料傳遞,request應該是最合适的選擇。