Top / Struts / Struts Validator

書き途中。

プラグインの記述

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>

Formのクラスを変更

  <form-bean name="passwordForm" type="org.apache.struts.action.DynaActionForm">
-><form-bean name="passwordForm" type="org.apache.struts.validator.DynaValidatorForm">

validation.xmlにルールを記述

今回はpasswordFormのuseridプロパティはnullがNGというのを記述します。

<formset>
  <form name="passwordForm">
    <field property="userid" depends="required">
      <msg name="required" key="errors.userid.null" />
    </field>
  </form>
</formset>

こんな感じです。

アクションマッピングの属性追加

valideteする旨の

validate="true" 

エラー時の遷移先

input="kino.tiles.rightsquaresearch" <-tilesの値も書ける

を追加します。

基本的にはこれでValidatorが有効になります。あとはエラー表示の記述などです。
ここまでで、useridプロパティがnullの時に、別のtileに遷移することが確認できました。 便利ですねぇ。ソースコード全くいじってないですからね。

JavaScript?で検証する

Validatorの目玉としてJavaScript?検証があります。

<html:javascript formName="passwordForm"/>

をどこかに記述してFormを

   <html:form action="/passwordSearch" focus="userid" >
-> <html:form action="/passwordSearch" focus="userid" onsubmit="return validatePasswordForm(this);"> 

とすると完成です。空文字でリクエストすると、アラートが表示されました。

関連リンク

このサイトを参考に書いています。


この記事は

選択肢 投票
おもしろかった 0  
そうでもない 0  

#navi(contents-page-name): No such page: Java/Struts

現在のアクセス:41745


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS