Struts使用のポイント


作者:call vin,gnian 0412
1.概要 
    Strutsさんはみんなよく知っていますので、もう詳しく紹介しません. 
1.Pragmatic Struts :SpringSideがオススメする最新のPragmatic使い方.
2.SprigSideのStrutsパッケージ、SpringSideパッケージのStrutsのCRUD Actionベースクラスは、デフォルトではCRUDの方法があります.みんなは自分で拡張したり、この考えを参考にして新たにパッケージ化したりできます.
1.1参考書
「Jakata Struts Cookbook」2005 O'Reillyは、鉄腕のブログ上に中国語の翻訳が一部あります.
2.SpringとStrutsの統合
2.1 struts-config.xmlにConttext Loader PlugInを追加する
Contect Loader PlunInはStruts 1.1+のプラグインであり、StrutsのアクションセットのためにSpringをロードするAppplication Contectである.このContextはWebApplication Comptext(Contect Loader Listenerによってロードされます)をその親Contectとして引用します.デフォルトのcontextファイルはマッピングされます. アクションセットの名前に-servlet.xmlのサフィックスを付けます.アクションServletがweb.xmlでactionと定義されている場合、デフォルトのファイルは/WEB-INF/actionn-servlet.xmlです.
フォーマットは以下の通りです
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"/>
2.2 Struts-config.xmlにDelegating Request Processorを追加する
 SpringのDelegating Request Process orでStrutsデフォルトのRequest Processorを重載します.このようにActionに対する要求を受けると、Delegating Request Processorは自動的にSpring Contectから対応するアクションBenを検索する.
フォーマットは以下の通りです
<controller>
<set-property property="processorClass" value="org.springframework.web.struts.DelegatingRequestProcessor"/>
</controller>
2.3 struts-config.xmlとactionn-servlet.xmlのActionとBenの対応関係を確立する
 struts-config.xmlとactionn-servlet.xmlをつなぐアクションとビーンの橋はactionの「path」とbeanの「name」です.struts-config.xmlファイルに次のような構成があるなら、 アクションバーの名前をactionn-servlet.xmlで「/users」と定義しなければならない:設定が終わったら、actionのtype属性は省略して書かないことができます.なお、ここでbeanはidではなくname属性を使用しています.
3.入力チェックとメッセージの表示
      検査はまだ面倒です.COMMUS-validatorの1.3版を使って、struts 1.35ベルトのvalidator-rules.xmlを使います.オプションのvalidatorは、validator-rules.xmlで定義されているものに準じる.
 3.1 定義  
    注意validaton.xmlの頭声明は1.3に変更する必要があります.
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">
      validation.xmlを作成します.
<form name="userForm">
<field property="name" depends="required">
<arg0 key="user.name"/>
</field>
</form>
そして、reources/i 18 n/messages.propertiesに必要なmessageを加入して、user.name=User Nameのようです.
     struts-config.xml加入
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
   3.2クライアントJSチェック:
   各フォームm.jspのformにonsubmit=「return validateUser Form(this)」を追加します.この中でUserFormはvalidation.xmlのform名です.
    jspの最後に参加します
<html:javascript formName="userForm" staticJavascript="false" cdata="false"/>
<script type="text/javascript" src="<c:url value="/scripts/validator.jsp"/>"></script>
 3.3サービス端末検証:
ActionMessages errors = form.validate(mapping, request);
if (!errors.isEmpty()) {
saveErrors(request, errors);
return mapping.findForward("edit");
}
3.4エラーメッセージの表示:
   メッセージ.jspを参照して、情報またはエラーを表示することができます.
   表示したいところに「%@include file="/commons/messages.jsp」%を追加します.
   もし同時に列の中でエラーを表示したいなら、