[CUBBY-44] Validationエラーメッセージのインデックス対応 Created: 2007-11-03  Updated: 2008-01-10  Resolved: 2007-11-17

Status: Closed
Project: Cubby
Component/s: Core
Affects Version/s: None
Fix Version/s: 0.9.2

Type: New Feature Priority: Major
Reporter: agata Assignee: baba
Resolution: Fixed Votes: 0
Labels: None


 Description   

配列でバリデーションエラーが発生したときに、インデックスをエラーに保持されて、
対象のフィールドを赤く表示したいところ。

エラーメッセージにはインデックスを保持していないので、修正ポイントは多そうですね。



 Comments   
Comment by baba [ 2007-11-17 ]

othersにしました。

r574〜578で対応しました。

Comment by agata [ 2007-11-15 ]

そのほかは賛成です。JSPから使いやすいのがベストだと思います。

Comment by agata [ 2007-11-15 ]

>フィールド指定なしのメッセージをとるときはfieldsにnullを指定したらいいかと思いましたが、いまいちですね。
>${errors.nofield} とか ${errors.form} とか ${errors.page} とかかな?

その中ならerrors.formかなあ。
あるいは、errors.othersとか。

Comment by baba [ 2007-11-15 ]

ActionErrors のエラーメッセージを取得するメソッドをこんな風にしようと思います。
-全部のエラー : List<String> getAll();
-フィールドのエラー : Map<String, List<String>> getFields();
-フィールドの特定のインデックスのエラー : Map<String, Map<Integer, List<String>>> getIndexedFields();

「フィールドの特定のインデックスのエラー」のとこ、型変数がちょっとごちゃごちゃしてますが、JSPで扱うことを考えてこうしたほうがいいかと思いました。

JSPでの例
${errors.all} 全部のエラーメッセージのリスト
${errors.fields[name]} nameフィールドのエラーメッセージのリスト
${errors.indexedFields[name][0]} nameフィールドの0番めのエラーメッセージのリスト

フィールド指定なしのメッセージをとるときはfieldsにnullを指定したらいいかと思いましたが、いまいちですね。
${errors.nofield} とか ${errors.form} とか ${errors.page} とかかな?

Generated at Mon Dec 15 15:01:26 JST 2025 using Jira 10.6.1#10060001-sha1:a6461e220f274b29ced7ac9295492f2465fe5ef5.