- - PR -
struts1.1b3のvalidateについて。
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2003-02-18 20:05
お返事ありがとうございます。
validation.xmlは読み込まれているようです。 depends="xxx"とか変な値を入れるとチェックできずにActionに行ってしまいますが。 依然としてちゃんとdepends="required"など入れると vaildateメソッドをオーバーライドしてその中で ActionErrors errors = super.validate(mapping, request); とし、 Iterator iterator = errors.get(); while(iterator.hasNext()){ ActionError actionError = (ActionError)iterator.next(); /*debug*/logger.debug("actionError = " + actionError.getKey()); } とするとactionError = errors.requiredとログに吐き出されます。 このあとはerrorsをリターンするだけで、遷移先には<html:errors/>が記述してあるのですが、どうしても表示されません。 errors.requiredとリソースファイルの紐付けがうまくいってないということなのでしょうか? validation.xmlに <form name="loginform"> <field property="userId" depends="required"> <arg0 key="USER_ID" resource="false"/> </field> </form> ApplicationResources.propertiesには errors.required={0} is required. と定義してあるのですが... よろしくお願いします。 |
|
投稿日時: 2003-02-18 21:25
え? 以前、errors.isEmpty()が、trueだと書いてませんでした?
なのに、中身が入っているのですか? JSPに、 <h2><bean:message key="errors.required" arg0="hello"/></h2> とか書いたら、メッセージは表示されますか? |
|
投稿日時: 2003-02-18 22:26
お返事ありがとうございます。
おかげさまで解決することができました。 原因はApplicationResourcesを読み込んでないという点にあったのですが、 web.xmlに <init-param> <param-name>application</param-name> <param-value>resources.ApplicationResources</param-value> </init-param> という記述がしてありまして、その設定が効いてたみたいで読み込めなかったようです。消しました。 struts-config.xmlばかり見ていてweb.xmlの方に気が向いていませんでした。 本当に申し訳ありません。 <html:errors/>にエラーメッセージが表示されるようになりました。 うのきち様、最後まで親切にしていただき本当にありがとうございました。 |
