【发布时间】:2020-12-19 00:40:38
【问题描述】:
如何更改验证消息的资源包?默认的是读取我的 ValidationMessages.properties 为 ISO-8859-1(我猜),但它是 UTF-8。我试过这个:
@Configuration
@EnableWebMvc
@ComponentScan
public class ApplicationConfiguration extends WebMvcConfigurerAdapter{
@Bean( name = "messageSource" )
public ReloadableResourceBundleMessageSource validationMessageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("ValidationMessages");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
@Bean
public LocalValidatorFactoryBean validator() {
LocalValidatorFactoryBean validatorFactoryBean = new LocalValidatorFactoryBean();
validatorFactoryBean.setValidationMessageSource(validationMessageSource());
return validatorFactoryBean;
}
@Override
public Validator getValidator() {
return validator();
}
无论我在这里放什么,Hibernate 都不会使用它来获取消息。 有小费吗? 我正在使用 Hibernate 5 和 Spring 4。
【问题讨论】:
-
你确定它没有使用“UTF-8”吗?您可以在运行时致电
messageSource.getDefaultEncoding()并仔细检查吗?
标签: java spring hibernate hibernate-validator spring-4