Strutsの中でAction Form種類のいくつかの方法


Strutsの中のAction Form類には、あまり使われていませんが、たまに役に立ちます.その機能は何をするかを知る必要があります.私たちだけがです.
 
まず第一に理解したいのは、reset()方法であり、この方法はソースコードで定義された実装は以下の通りである.
 
 public void reset(ActionMapping mapping, HttpServletRequest request) {

        ;       // Default implementation does nothing

    }
 
上記のコードから分かるように、reset()の方法はクラスの中で一つの空白の実現を定義しただけです.この方法はどんな用途がありますか?もし私たちがクラスローディングの前に他のことをしなければならないならば、私たちはアクション・フォームの中でリセットできます.
 
私たちが知るべき第二の方法はvalidateであり、この方法はソースコードで定義されている.
 
public ActionErrors validate(ActionMapping mapping,
                                 HttpServletRequest request) {

        return (null);

    }
 
 
ソースからは、オブジェクトを返す必要がありますvalidate()方法がわかります.実は、validate()の役割は名前と同じです.システム開発を行う時、必要な検証をします.しかし、通常の状況では、JavaScriptは便利で、迅速で、効率的にこれらの問題を解決することができます.しかし、システムの安全性が非常に高いなら、JavaScriptで検証するだけでなく、アクション・フォームで検証する必要があります.
  
私たちはAction Formで検証する時、struts-config.xmlで任意の設定をしていないなら、validateの属性はデフォルトでtrueに設定されます.この属性をfalseに設定すると、Action Formで検証しても、システムは検証しません.
 
<struts-config>
	<form-beans>
		<form-bean name="ActionForm" type="com.cx.struts.CalcAction"></form-bean>
	</form-beans>

 <action-mappings>
 	<action path="/calc"
 			type="com.cx.struts.CalcAction"
			name="ActionForm"
			scope="request"
			validate="true"
			>
	
		<forward name="success" path="/success.jsp"></forward>	
		<forward name="error" path="/error.jsp"></forward>	
	</action>
			
 </action-mappings>
</struts-config>
 
第三の方法はatribute()です.もしstruts-config.xmlにatribute属性を設定したら、JSPでEL表現を使うなら、Action Formのname名ではなく、atributeという属性を使う必要があります.