java类org.springframework.validation.Validator的实例源码

DefaultMessageHandlerMethodFactoryTests.java 文件源码 项目:spring4-understanding 阅读 33 收藏 0 点赞 0 评论 0
@Test
public void customValidation() throws Exception {
    DefaultMessageHandlerMethodFactory instance = createInstance();
    instance.setValidator(new Validator() {
        @Override
        public boolean supports(Class<?> clazz) {
            return String.class.isAssignableFrom(clazz);
        }
        @Override
        public void validate(Object target, Errors errors) {
            String value = (String) target;
            if ("failure".equals(value)) {
                errors.reject("not a valid value");
            }
        }
    });
    instance.afterPropertiesSet();

    InvocableHandlerMethod invocableHandlerMethod =
            createInvocableHandlerMethod(instance, "payloadValidation", String.class);
    thrown.expect(MethodArgumentNotValidException.class);
    invocableHandlerMethod.invoke(MessageBuilder.withPayload("failure").build());
}
SendController.java 文件源码 项目:setra 阅读 41 收藏 0 点赞 0 评论 0
@Autowired
public SendController(final MessageSenderService messageService,
                      final @Qualifier("mvcValidator") Validator validator,
                      final SecureTransferConfiguration config) {
    this.messageService = messageService;
    this.validator = validator;
    this.config = config;
}
WebConfiguratie.java 文件源码 项目:OperatieBRP 阅读 36 收藏 0 点赞 0 评论 0
/**
 * Registreer de specifieke validators.
 * @param validators validators
 */
public void setValidators(final Validator[] validators) {
    for (final Validator validator : validators) {
        if (!(validator instanceof GlobalValidator)) {
            this.validators.add(validator);
        }
    }
}
WebConfiguratie.java 文件源码 项目:OperatieBRP 阅读 44 收藏 0 点赞 0 评论 0
@Override
public boolean supports(final Class<?> clazz) {
    for (final Validator validator : validators) {
        if (validator.supports(clazz)) {
            return true;
        }
    }
    return false;
}
WebConfiguratie.java 文件源码 项目:OperatieBRP 阅读 37 收藏 0 点赞 0 评论 0
@Override
public void validate(final Object target, final Errors errors) {
    for (final Validator validator : validators) {
        if (validator.supports(target.getClass())) {
            validator.validate(target, errors);
        }
    }
}
ProductValidator.java 文件源码 项目:Webstore 阅读 36 收藏 0 点赞 0 评论 0
public void validate(Object target, Errors errors) {
    Set<ConstraintViolation<Object>> constraintViolations = beanValidator.validate(target);
    for (ConstraintViolation<Object> constraintViolation : constraintViolations) {
        String propertyPath = constraintViolation.getPropertyPath().toString();
        String message = constraintViolation.getMessage();
        errors.rejectValue(propertyPath, "", message);
    }
    for(Validator validator: springValidators) {
        validator.validate(target, errors);
    }
}
PathologicalReportsApplication.java 文件源码 项目:pathological-reports 阅读 40 收藏 0 点赞 0 评论 0
@Override
public Validator getValidator() {
    LocalValidatorFactoryBean validator = new LocalValidatorFactoryBean();
    validator.setValidationMessageSource(messageSource);

    return validator;
}
WebConfig.java 文件源码 项目:spring-boot-seed 阅读 37 收藏 0 点赞 0 评论 0
@Override
public Validator getValidator() {
    LocalValidatorFactoryBean localValidatorFactoryBean = new LocalValidatorFactoryBean();
    localValidatorFactoryBean.setProviderClass(org.hibernate.validator.HibernateValidator.class);
    localValidatorFactoryBean.setValidationMessageSource(messageSource());
    return localValidatorFactoryBean;
}
HockeyGameApplication.java 文件源码 项目:hockey-game 阅读 43 收藏 0 点赞 0 评论 0
@Override
public Validator getValidator() {
    LocalValidatorFactoryBean validator = new LocalValidatorFactoryBean();
    validator.setValidationMessageSource(messageSource);

    return validator;
}
CommonControllerAdvice.java 文件源码 项目:oma-riista-web 阅读 35 收藏 0 点赞 0 评论 0
private Validator[] supportedValidatorsFor(Class<?> clazz) {
    final Set<Validator> supportedValidators = new HashSet<>();
    for (Validator validator : validators) {
        if (validator.supports(clazz)) {
            supportedValidators.add(validator);
        }
    }
    return supportedValidators.toArray(new Validator[supportedValidators.size()]);
}
MessageBrokerConfigurationTests.java 文件源码 项目:spring4-understanding 阅读 46 收藏 0 点赞 0 评论 0
@Test
public void simpValidatorCustom() {
    final Validator validator = mock(Validator.class);
    AbstractMessageBrokerConfiguration config = new BaseTestMessageBrokerConfig() {
        @Override
        public Validator getValidator() {
            return validator;
        }
    };

    assertSame(validator, config.simpValidator());
}
MessageBrokerConfigurationTests.java 文件源码 项目:spring4-understanding 阅读 38 收藏 0 点赞 0 评论 0
@Test
public void simpValidatorInjected() {
    SimpAnnotationMethodMessageHandler messageHandler =
            this.simpleBrokerContext.getBean(SimpAnnotationMethodMessageHandler.class);

    assertThat(messageHandler.getValidator(), Matchers.notNullValue(Validator.class));
}
PayloadArgumentResolverTests.java 文件源码 项目:spring4-understanding 阅读 42 收藏 0 点赞 0 评论 0
private Validator testValidator() {
    return new Validator() {
        @Override
        public boolean supports(Class<?> clazz) {
            return String.class.isAssignableFrom(clazz);
        }
        @Override
        public void validate(Object target, Errors errors) {
            String value = (String) target;
            if ("invalidValue".equals(value)) {
                errors.reject("invalid value");
            }
        }
    };
}
MultiActionController.java 文件源码 项目:spring4-understanding 阅读 33 收藏 0 点赞 0 评论 0
/**
 * Bind request parameters onto the given command bean
 * @param request request from which parameters will be bound
 * @param command command object, that must be a JavaBean
 * @throws Exception in case of invalid state or arguments
 */
protected void bind(HttpServletRequest request, Object command) throws Exception {
    logger.debug("Binding request parameters onto MultiActionController command");
    ServletRequestDataBinder binder = createBinder(request, command);
    binder.bind(request);
    if (this.validators != null) {
        for (Validator validator : this.validators) {
            if (validator.supports(command.getClass())) {
                ValidationUtils.invokeValidator(validator, command, binder.getBindingResult());
            }
        }
    }
    binder.closeNoCatch();
}
WebMvcConfigurerComposite.java 文件源码 项目:spring4-understanding 阅读 39 收藏 0 点赞 0 评论 0
@Override
public Validator getValidator() {
    List<Validator> candidates = new ArrayList<Validator>();
    for (WebMvcConfigurer configurer : this.delegates) {
        Validator validator = configurer.getValidator();
        if (validator != null) {
            candidates.add(validator);
        }
    }
    return selectSingleInstance(candidates, Validator.class);
}
WebMvcConfigurationSupportExtensionTests.java 文件源码 项目:spring4-understanding 阅读 35 收藏 0 点赞 0 评论 0
@Override
public Validator getValidator() {
    return new Validator() {
        @Override
        public void validate(Object target, Errors errors) {
            errors.reject("invalid");
        }
        @Override
        public boolean supports(Class<?> clazz) {
            return true;
        }
    };
}
WebMvcConfigurationSupportTests.java 文件源码 项目:spring4-understanding 阅读 31 收藏 0 点赞 0 评论 0
@Test
public void requestMappingHandlerAdapter() throws Exception {
    ApplicationContext context = initContext(WebConfig.class);
    RequestMappingHandlerAdapter adapter = context.getBean(RequestMappingHandlerAdapter.class);
    List<HttpMessageConverter<?>> converters = adapter.getMessageConverters();
    assertEquals(9, converters.size());
    for(HttpMessageConverter<?> converter : converters) {
        if (converter instanceof AbstractJackson2HttpMessageConverter) {
            ObjectMapper objectMapper = ((AbstractJackson2HttpMessageConverter)converter).getObjectMapper();
            assertFalse(objectMapper.getDeserializationConfig().isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
            assertFalse(objectMapper.getSerializationConfig().isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
            assertFalse(objectMapper.getDeserializationConfig().isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES));
            if (converter instanceof MappingJackson2XmlHttpMessageConverter) {
                assertEquals(XmlMapper.class, objectMapper.getClass());
            }
        }
    }

    ConfigurableWebBindingInitializer initializer = (ConfigurableWebBindingInitializer) adapter.getWebBindingInitializer();
    assertNotNull(initializer);

    ConversionService conversionService = initializer.getConversionService();
    assertNotNull(conversionService);
    assertTrue(conversionService instanceof FormattingConversionService);

    Validator validator = initializer.getValidator();
    assertNotNull(validator);
    assertTrue(validator instanceof LocalValidatorFactoryBean);

    DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(adapter);
    @SuppressWarnings("unchecked")
    List<Object> bodyAdvice = (List<Object>) fieldAccessor.getPropertyValue("requestResponseBodyAdvice");
    assertEquals(2, bodyAdvice.size());
    assertEquals(JsonViewRequestBodyAdvice.class, bodyAdvice.get(0).getClass());
    assertEquals(JsonViewResponseBodyAdvice.class, bodyAdvice.get(1).getClass());
}
MethodJmsListenerEndpointTests.java 文件源码 项目:spring4-understanding 阅读 35 收藏 0 点赞 0 评论 0
private Validator testValidator(final String invalidValue) {
    return new Validator() {
        @Override
        public boolean supports(Class<?> clazz) {
            return String.class.isAssignableFrom(clazz);
        }
        @Override
        public void validate(Object target, Errors errors) {
            String value = (String) target;
            if (invalidValue.equals(value)) {
                errors.reject("not a valid value");
            }
        }
    };
}
WebMvcConfig.java 文件源码 项目:bag-database 阅读 33 收藏 0 点赞 0 评论 0
@Override
public Validator getValidator() {
    LocalValidatorFactoryBean validator = new LocalValidatorFactoryBean();
    validator.setValidationMessageSource(messageSource());
    return validator;
}
SpringDataRestValidationConfiguration.java 文件源码 项目:SMSC 阅读 40 收藏 0 点赞 0 评论 0
@Override
public void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener validatingListener) {
    Validator validator = validator();

    //bean validation always before save and create
    validatingListener.addValidator("beforeCreate", validator);
    validatingListener.addValidator("beforeSave", validator);
}
ConfigurationPropertiesBindingPostProcessor.java 文件源码 项目:https-github.com-g0t4-jenkins2-course-spring-boot 阅读 42 收藏 0 点赞 0 评论 0
private void freeLocalValidator() {
    try {
        Validator validator = this.localValidator;
        this.localValidator = null;
        if (validator != null) {
            ((DisposableBean) validator).destroy();
        }
    }
    catch (Exception ex) {
        throw new IllegalStateException(ex);
    }
}
ConfigurationPropertiesBindingPostProcessor.java 文件源码 项目:https-github.com-g0t4-jenkins2-course-spring-boot 阅读 37 收藏 0 点赞 0 评论 0
private Validator determineValidator(Object bean) {
    Validator validator = getValidator();
    boolean supportsBean = (validator != null && validator.supports(bean.getClass()));
    if (ClassUtils.isAssignable(Validator.class, bean.getClass())) {
        if (supportsBean) {
            return new ChainingValidator(validator, (Validator) bean);
        }
        return (Validator) bean;
    }
    return (supportsBean ? validator : null);
}
ConfigurationPropertiesBindingPostProcessor.java 文件源码 项目:https-github.com-g0t4-jenkins2-course-spring-boot 阅读 32 收藏 0 点赞 0 评论 0
private Validator getValidator() {
    if (this.validator != null) {
        return this.validator;
    }
    if (this.localValidator == null && isJsr303Present()) {
        this.localValidator = new LocalValidatorFactory()
                .run(this.applicationContext);
    }
    return this.localValidator;
}
ConfigurationPropertiesBindingPostProcessor.java 文件源码 项目:https-github.com-g0t4-jenkins2-course-spring-boot 阅读 37 收藏 0 点赞 0 评论 0
@Override
public boolean supports(Class<?> clazz) {
    for (Validator validator : this.validators) {
        if (validator.supports(clazz)) {
            return true;
        }
    }
    return false;
}
ConfigurationPropertiesBindingPostProcessor.java 文件源码 项目:https-github.com-g0t4-jenkins2-course-spring-boot 阅读 45 收藏 0 点赞 0 评论 0
@Override
public void validate(Object target, Errors errors) {
    for (Validator validator : this.validators) {
        if (validator.supports(target.getClass())) {
            validator.validate(target, errors);
        }
    }
}
ListValidationUtils.java 文件源码 项目:subs 阅读 34 收藏 0 点赞 0 评论 0
/**
 * Use a validator on a list of objects, correctly handling changes to the nestedPath
 *
 * @param path
 * @param validator
 * @param list
 * @param errors
 */
public static void invokeValidatorOnList(String path, Validator validator, List<?> list, Errors errors) {

    int i = 0;

    for (Object target : list) {
        try {
            errors.pushNestedPath(path + "[" + i + "]");
            ValidationUtils.invokeValidator(validator, target, errors);
        } finally {
            errors.popNestedPath();
            i++;
        }
    }
}
ValidatorConfig.java 文件源码 项目:subs 阅读 37 收藏 0 点赞 0 评论 0
@Override
public void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener eventListener) {

    Stream<Validator> stdValidators = Stream.of(
            analysisValidator,
            assayValidator,
            assayDataValidator,
            egaDacValidator,
            egaDacPolicyValidator,
            egaDatasetValidator,
            projectValidator,
            protocolValidator,
            sampleValidator,
            sampleGroupValidator,
            studyValidator,

            submissionValidator

    );

    stdValidators.forEach(validator -> {
        eventListener.addValidator(BEFORE_CREATE, validator);
        eventListener.addValidator(BEFORE_SAVE, validator);
    });

    eventListener.addValidator(BEFORE_SAVE, submissionStatusValidator);

    eventListener.addValidator(BEFORE_DELETE, submissionDeleteValidator);

    eventListener.addValidator(BEFORE_DELETE, submittableDeleteValidator);
}
DataBinderMappingJackson2HttpMessageConverter.java 文件源码 项目:gvnix1 阅读 32 收藏 0 点赞 0 评论 0
/**
 * Default constructor
 * 
 * @param cs
 * @param validator
 */
public DataBinderMappingJackson2HttpMessageConverter(ConversionService cs,
        Validator validator) {
    super();
    this.conversionService = cs;
    this.validator = validator;
}
Jackson2RequestMappingHandlerAdapter.java 文件源码 项目:gvnix1 阅读 40 收藏 0 点赞 0 评论 0
/**
 * Default constructor.
 */
@Autowired
public Jackson2RequestMappingHandlerAdapter(
        ConversionService conversionService, Validator validator) {
    super();
    this.conversionService = conversionService;
    this.validator = validator;
}
ConversionServiceObjectMapper.java 文件源码 项目:gvnix1 阅读 30 收藏 0 点赞 0 评论 0
/**
 * Register custom serialization and deserialization modules.
 * 
 * @param conversionService
 * @param validator
 */
@Autowired
public ConversionServiceObjectMapper(
        final ConversionService conversionService, final Validator validator) {

    // Register a module to add provider for custom bean deserializer
    registerModule(new ConversionServiceModule(conversionService));

    // Register a module to add provider for custom bean serializer
    registerModule(new DataBinderModule());
}


问题


面经


文章

微信
公众号

扫码关注公众号