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.ExecutableValidatorjakarta.validation.metadata.BeanDescriptorgetConstraintsForClass(Class<?> clazz) voidinit()<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:
validatein interfacejakarta.validation.Validator
-
validateProperty
public <T> Set<jakarta.validation.ConstraintViolation<T>> validateProperty(T object, String propertyName, Class<?>... groups) - Specified by:
validatePropertyin interfacejakarta.validation.Validator
-
validateValue
public <T> Set<jakarta.validation.ConstraintViolation<T>> validateValue(Class<T> beanType, String propertyName, Object value, Class<?>... groups) - Specified by:
validateValuein interfacejakarta.validation.Validator
-
getConstraintsForClass
- Specified by:
getConstraintsForClassin interfacejakarta.validation.Validator
-
unwrap
- Specified by:
unwrapin interfacejakarta.validation.Validator
-
forExecutables
public jakarta.validation.executable.ExecutableValidator forExecutables()- Specified by:
forExecutablesin interfacejakarta.validation.Validator
-