skillup

技術ブログ

Java

BeanValidationの動的メッセージ出力について

投稿日:

JSF+ManagedBeanでは基本的にbeanValidationを使ってバリデーションを行い、エラーメッセージなどはプロパティファイルで管理するのが一般的です。

アノテーションなどを付与してあげるとメッセージを動的に変えることはできます。

例えば

「~は必須項目です。」の「~」に関してはアノテーションを入れる際にプロパティを設定してあげればOKです。

が、プロパティではなく、エラーメッセージを動的に変えることはアノテーションの付与のみではできません。

例えば

あるパラメーターに対して2段階のエラーチェックがあり、1番目でひっかかったときと2番目で引っかかったときのエラーメッセージを変えたいときです。

いろいろ、検索したら下記のようにできました。実装部分のみ書いてます。

下記の部分で動的にエラーメッセージを変えられるようです。

リファレンスと情報は↓こちら

http://www.programcreek.com/java-api-examples/index.php?api=javax.validation.ConstraintValidatorContext

https://docs.oracle.com/javaee/7/api/javax/validation/ConstraintValidatorContext.html

まだ仕組みが全然わかってないので、もっと調査の必要がありますね・・

-Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

glassfishとDB接続 ~CUI操作~

JavaEEではDBを使うときにglassfish内で設定が必要です。 基本的にはGlassFishでDB接続などのようにブラウザで管理画面から情報を入力することが可能です。 ただCUIや設定ファイル …

no image

配列からListへの変換

配列からListにしたいとき、ループでいちいち回さなくても下記の処理で一気にListに変換できます。

Netbeansに教えてもらいま …

no image

arquillianでの外部ライブラリ使用

現状、実務ではDBのテストでは基本的にarquillianを使っています。 arquillianとにかく、重いですね~。 まあglassfishを動かしているので仕方ないかもしれませんが、簡単なテスト …

no image

型パラメータに関して その2

Javaでオブジェクト指向に基づいたコーディングをするために必須であり、最初の難関だったのが型パラメータでした。 Contents1 型パラメータが必要なケース2 型パラメータの制限3 クラスインスタ …

no image

JSFのifタグ

JSFは基本的にテンプレートなので、 HTML+CSS+JavaScript ロジック側からの変数の出力 ループ処理 以上のことをさせることはあまりありません。 が、まれに条件分岐なんかをさせたいとき …

アーカイブ