У меня есть приложение Spring, которое использует Hibernate Validation. Мои файлы свойств валидатора и сообщений сконфигурированы в классе Spring Configuration, а файл свойств находится в src / main / resources /;
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource
= new ReloadableResourceBundleMessageSource();
messageSource.setBasename("classpath:validationMessages");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
@Bean
public LocalValidatorFactoryBean validator() {
LocalValidatorFactoryBean bean = new LocalValidatorFactoryBean();
bean.setValidationMessageSource(messageSource());
return bean;
}
, и я пишу аннотации валидации, такие как
@NotEmpty(message = "{id.required}")
private String id;
Когда я тестирую локально, все работает, и я вижу текст, определенный в valdationMessages, а не ключ "id.required". Когда приложение развертывается в WildFly 19.0.0.Final как файл .ear, мои сообщения об ошибках исчезают, и я вижу только ключ сообщения.
Мое приложение упаковано как файл .jar в файл .ear, и поиск в Google указывает, что, поскольку мой файл свойств связан внутри файла jar, он больше не отображается в пути к классам.
Я нашел несколько предложений, таких как https://developer.jboss.org/thread/253050, но я не смог заставить их работать.
Может кто-нибудь указать мне на простой руководство о том, как сделать мой файл свойств доступным при работе под WildFly?