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

JPAでの多対多のリレーション

以前、このエントリーでJPAのリレーションについて説明しました。 今回は多対多について説明します。 Contents1 テーブル構成2 ソース2.1 CDのエンティティ2.2 Artistのエンティテ …

no image

GlassFishとTomcatの違い

JavaEEの開発を始めてからは基本的にサーバーとしてGlassFishを使っています。 一般的なJavaのサーバーというとTomcatが有名ではないでしょうか。少なくとも私はTomcatしか知りませ …

no image

JSFでのCSVダウンロード機能

JSF+CDIでCSVダウンロード機能を実装するときの処理です。 結構、汎用的でいろんなところででてきますね。 Contents1 コード2 参考リンク コード [crayon-61002a8fdd5 …

no image

Annnotationについて その2

Java(JavaEE)をやりだして半年ぐらいたつんですが、個人的に鬼門だとおもっていたのが下記内容です。 MVCではないコンポーネントの考え方 クラスを使ったジェネリクスの使い方(型パラメータなど) …

no image

Seleniumの値基本動作まとめ

以前、「Seleniumでの画面テスト」というエントリーでのテストフレームワークとして、Seleniumを紹介しました。 上記のエントリーですが、単なるインストールと基本的な起動、簡単な文字入力ぐらい …