Package io.extact.rms.platform.validate
Class ValidateParamInterceptor.InnerValidatorImpl
java.lang.Object
io.extact.rms.platform.validate.ValidateParamInterceptor.InnerValidatorImpl
- All Implemented Interfaces:
jakarta.validation.Validator
- Enclosing class:
- ValidateParamInterceptor
@ApplicationScoped
public static class ValidateParamInterceptor.InnerValidatorImpl
extends Object
implements jakarta.validation.Validator
CDIでValidatorをラップしたクラス。
以下の理由からCDI-BeanValidatorインテグレーション機能は使わず独自実装を行い、
CDI-BeanValidatorインテグレーション機能がデフォルトで有効になっている環境でも取得可能なように
限定氏を付けている。
- JavaEE の"Method validation"は広範に効きすぎなのでOFFにしたい
- @InjectでValidatorインスタンスを取得するにはHibernateのValidatorExtensionを有効にする必要が あるがJerseyとのvalidate機能も混在してライブラリと機能実態がカオスになる
- Validatorインスタンスの@Injectによる取得はclassパス上にhibernate-validator-cdi.jarなどがあるか によりポータビリティに難がある
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionjakarta.validation.executable.ExecutableValidator
jakarta.validation.metadata.BeanDescriptor
getConstraintsForClass
(Class<?> clazz) void
init()
<T> T
<T> Set<jakarta.validation.ConstraintViolation<T>>
<T> Set<jakarta.validation.ConstraintViolation<T>>
validateProperty
(T object, String propertyName, Class<?>... groups) <T> Set<jakarta.validation.ConstraintViolation<T>>
validateValue
(Class<T> beanType, String propertyName, Object value, Class<?>... groups)
-
Constructor Details
-
InnerValidatorImpl
public InnerValidatorImpl()
-
-
Method Details
-
init
@PostConstruct public void init() -
validate
- Specified by:
validate
in interfacejakarta.validation.Validator
-
validateProperty
public <T> Set<jakarta.validation.ConstraintViolation<T>> validateProperty(T object, String propertyName, Class<?>... groups) - Specified by:
validateProperty
in interfacejakarta.validation.Validator
-
validateValue
public <T> Set<jakarta.validation.ConstraintViolation<T>> validateValue(Class<T> beanType, String propertyName, Object value, Class<?>... groups) - Specified by:
validateValue
in interfacejakarta.validation.Validator
-
getConstraintsForClass
- Specified by:
getConstraintsForClass
in interfacejakarta.validation.Validator
-
unwrap
- Specified by:
unwrap
in interfacejakarta.validation.Validator
-
forExecutables
public jakarta.validation.executable.ExecutableValidator forExecutables()- Specified by:
forExecutables
in interfacejakarta.validation.Validator
-