0

Spring MVC アプリケーションでデフォルトの hibernate-validation (5.0.2 バージョン) から ValidationMessages.properties をオーバーライドしようとしています。

ただし、jar の内部 ValidationMessages.properties を使用し続けます。

更新: *.properties ファイルを org\hibernate\validator にコピーすると動作します (ただし、別の方法である必要があります)。

これは私の構成です:

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = {"com.blueliv.search.*"} )
public class WebConfig extends WebMvcConfigurerAdapter {

  static Logger log =LoggerFactory.getLogger(WebMvcConfigurerAdapter.class);

  @Override
  public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
      converters.add(new GsonHttpMessageConverter());

      //converters.add(new MappingJackson2HttpMessageConverter());
  }

  @Bean
  public MethodValidationPostProcessor methodValidationPostProcessor() {
      return new MethodValidationPostProcessor();
  }

  @Bean
  public ExceptionHandlerExceptionResolver exceptionResolver() {
      return new ExceptionHandlerExceptionResolver();
  }

  @Bean
  public LocalValidatorFactoryBean validator() {
      LocalValidatorFactoryBean validatorFactoryBean = new LocalValidatorFactoryBean();
      validatorFactoryBean.setValidationMessageSource(getBundle());
      return validatorFactoryBean;
  }


  public ReloadableResourceBundleMessageSource getBundle(){
      log.debug("get bundle!");
      ReloadableResourceBundleMessageSource bundle = new ReloadableResourceBundleMessageSource();
      bundle.setBasenames("classpath:/i18n/validation/ValidatonMessages");
      return bundle;
  }


  @Override
  public Validator getValidator() {
      return validator();
  }
4

0 に答える 0