2017-03-07 3 views
1

ExecutableValidator.validateParameters APIを使用すると、メソッド呼び出しのパラメータを検証できます。BeanValidation 1.1:パラメータへのリンク違反

ConstraintViolationsのセットで戻ってきたとき、セット内の違反要素を特定のパラメータ(例:インデックス)にリンクするにはどうすればよいですか?

考えてみましょうユーザーがフォームを投稿するときにコントローラメソッドの呼び出しを検証する必要があります。 validateParameters APIを使用してデータにエラーが見つかったら、xxxフィールドの値が無効であるとユーザーに返す必要があります。どのパラメータ値が特定の違反を引き起こしたかを知る必要があります。

答えて

2

だから答えはタイプjavax.validation.Path

各パスはNodeのリストで構成されて、propertyPathという名前のプロパティを持っているConstraintViolation、内側にあります。ノードリスト内には、1つのノードNodeImpl.ParamNodeImplがあります。 toString() paramノードimplの場合、arg0arg1arg2 ...のようになり、それらの0,11は、失敗したパラメータインデックスに対応します。

関連する問題