クラス MethodValidationAdapter
java.lang.ObjectSE
org.springframework.validation.beanvalidation.MethodValidationAdapter
- 実装されたすべてのインターフェース:
MethodValidator
MethodValidator
は、検証に Bean Validation Validator
EE を使用し、ConstraintViolation
EE を MethodValidationResult
に適応させます。- 導入:
- 6.1
- 作成者:
- Rossen Stoyanchev
ネストされたクラスのサマリー
ネストされたクラスコンストラクターのサマリー
コンストラクターコンストラクター説明そにデフォルトの JSR-303 バリデータを使用してインスタンスを作成します。MethodValidationAdapter
(ValidatorEE validator) 指定された JSR-303 バリデータを使用してインスタンスを作成します。MethodValidationAdapter
(ValidatorFactoryEE validatorFactory) 指定された JSR-303 ValidatorFactory を使用してインスタンスを作成します。MethodValidationAdapter
(SupplierSE<ValidatorEE> validator) 提供された (遅延初期化される可能性がある) Validator のインスタンスを作成します。方法の概要
修飾子と型メソッド説明ClassSE<?>[]
determineValidationGroups
(ObjectSE target, MethodSE method) 該当する検証グループを決定します。configured
MessageCodesResolver
を返します。configured
ParameterNameDiscoverer
を返します。使用するように構成されたSpringValidatorAdapter
を返却します。final SetSE<ConstraintViolationEE<ObjectSE>>
invokeValidatorForArguments
(ObjectSE target, MethodSE method, ObjectSE[] arguments, ClassSE<?>[] groups) バリデーターを呼び出し、結果の違反を返します。final SetSE<ConstraintViolationEE<ObjectSE>>
invokeValidatorForReturnValue
(ObjectSE target, MethodSE method, ObjectSE returnValue, ClassSE<?>[] groups) バリデーターを呼び出し、結果の違反を返します。void
setMessageCodesResolver
(MessageCodesResolver messageCodesResolver) 違反のメッセージコードを決定するために使用する戦略を設定します。void
BindingResult
に使用する@Valid
メソッドパラメーターの名前を決定するようにリゾルバーを構成します。void
setParameterNameDiscoverer
(ParameterNameDiscoverer parameterNameDiscoverer) ParameterNameDiscoverer
を設定してメソッドパラメーター名を検出し、MessageSourceResolvable
のエラーコードを作成します。final MethodValidationResult
validateArguments
(ObjectSE target, MethodSE method, MethodParameter[] parameters, ObjectSE[] arguments, ClassSE<?>[] groups) 指定されたメソッド引数を検証し、検証結果を返します。final MethodValidationResult
validateReturnValue
(ObjectSE target, MethodSE method, MethodParameter returnType, ObjectSE returnValue, ClassSE<?>[] groups) 指定された戻り値を検証し、検証結果を返します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.validation.method.MethodValidator から継承されたメソッド
applyArgumentValidation, applyReturnValueValidation
コンストラクターの詳細
MethodValidationAdapter
public MethodValidationAdapter()そにデフォルトの JSR-303 バリデータを使用してインスタンスを作成します。MethodValidationAdapter
指定された JSR-303 ValidatorFactory を使用してインスタンスを作成します。- パラメーター:
validatorFactory
- 使用する JSR-303 ValidatorFactory
MethodValidationAdapter
指定された JSR-303 バリデータを使用してインスタンスを作成します。- パラメーター:
validator
- 使用する JSR-303 バリデーター
MethodValidationAdapter
提供された (遅延初期化される可能性がある) Validator のインスタンスを作成します。- パラメーター:
validator
- Validator が使用するための Supplier
メソッドの詳細
getSpringValidatorAdapter
使用するように構成されたSpringValidatorAdapter
を返却します。setMessageCodesResolver
違反のメッセージコードを決定するために使用する戦略を設定します。デフォルトは DefaultMessageCodesResolver です。
getMessageCodesResolver
configured
MessageCodesResolver
を返します。setParameterNameDiscoverer
ParameterNameDiscoverer
を設定してメソッドパラメーター名を検出し、MessageSourceResolvable
のエラーコードを作成します。MethodParameter
がvalidateArguments(java.lang.Object, java.lang.reflect.Method, org.springframework.core.MethodParameter[], java.lang.Object[], java.lang.Class<?>[])
またはvalidateReturnValue(java.lang.Object, java.lang.reflect.Method, org.springframework.core.MethodParameter, java.lang.Object, java.lang.Class<?>[])
に渡されない場合にのみ使用されます。デフォルトは
DefaultParameterNameDiscoverer
です。getParameterNameDiscoverer
configured
ParameterNameDiscoverer
を返します。setObjectNameResolver
BindingResult
に使用する@Valid
メソッドパラメーターの名前を決定するようにリゾルバーを構成します。これにより、Spring MVC の@ModelAttribute
メソッドパラメーターの名前を解決するなど、より高いレベルのプログラミングモデルと調整することができます。デフォルトでは、オブジェクト名は次のように解決されます。
- 入力パラメーターの場合は
MethodParameter.getParameterName()
- 戻り値の型の場合は
Conventions.getVariableNameForReturnType(Method, Class, Object)
"{methodName}.arg{index}"
(入力パラメーター用)- 戻り値の型の場合は
"{methodName}.returnValue"
- 入力パラメーターの場合は
determineValidationGroups
該当する検証グループを決定します。デフォルトでは、メソッドまたはクラスレベルの@Validated
アノテーションから取得されます。デフォルトは、メソッドの
Validated
アノテーションで指定されているか、メソッドの包含ターゲットクラスで指定されている検証グループです。または、ターゲットのない AOP プロキシ (アドバイザーのすべての動作を含む) の場合は、プロキシされたインターフェースもチェックします。- 次で指定:
- インターフェース
MethodValidator
のdetermineValidationGroups
- パラメーター:
target
- ターゲットオブジェクトmethod
- ターゲットメソッド- 戻り値:
Class
配列としての該当する検証グループ
validateArguments
public final MethodValidationResult validateArguments(ObjectSE target, MethodSE method, @Nullable MethodParameter[] parameters, ObjectSE[] arguments, ClassSE<?>[] groups) インターフェースからコピーされた説明:MethodValidator
指定されたメソッド引数を検証し、検証結果を返します。- 次で指定:
- インターフェース
MethodValidator
のvalidateArguments
- パラメーター:
target
- ターゲットオブジェクトmethod
- ターゲットメソッドparameters
- パラメーター(すでに作成されており利用可能な場合)arguments
- 検証する候補の引数値groups
-MethodValidator.determineValidationGroups(java.lang.Object, java.lang.reflect.Method)
の検証グループ- 戻り値:
- 検証の結果
invokeValidatorForArguments
public final SetSE<ConstraintViolationEE<ObjectSE>> invokeValidatorForArguments(ObjectSE target, MethodSE method, ObjectSE[] arguments, ClassSE<?>[] groups) バリデーターを呼び出し、結果の違反を返します。validateReturnValue
public final MethodValidationResult validateReturnValue(ObjectSE target, MethodSE method, @Nullable MethodParameter returnType, @Nullable ObjectSE returnValue, ClassSE<?>[] groups) インターフェースからコピーされた説明:MethodValidator
指定された戻り値を検証し、検証結果を返します。- 次で指定:
- インターフェース
MethodValidator
のvalidateReturnValue
- パラメーター:
target
- ターゲットオブジェクトmethod
- ターゲットメソッドreturnType
- 戻りパラメーター (すでに作成されて使用可能な場合)returnValue
- 検証する戻り値groups
-MethodValidator.determineValidationGroups(java.lang.Object, java.lang.reflect.Method)
の検証グループ- 戻り値:
- 検証の結果
invokeValidatorForReturnValue
public final SetSE<ConstraintViolationEE<ObjectSE>> invokeValidatorForReturnValue(ObjectSE target, MethodSE method, @Nullable ObjectSE returnValue, ClassSE<?>[] groups) バリデーターを呼び出し、結果の違反を返します。