i'm trying to get a well-formatted validation error message from message resource.
Expected: username can't be empty What I get: can't be empty. validation_en.properties :
NotEmpty=can't be empty
messages_en.properties
username=Username
My Class
@Value
public class LoginForm{
@NotEmpty
private final String username;
...
Configuration Class:
@Configuration
public class WebAdaptorConfiguration implements WebMvcConfigurer {
@Bean
public MessageSource messageSource() {
ResourceBundleMessageSource resource =
new ResourceBundleMessageSource();
resource.setBasenames("messages","validation");
resource.setDefaultEncoding("utf-8");
return resource;
}
@Bean
public LocaleResolver localeResolver() {
SessionLocaleResolver sessionLocaleResolver = new SessionLocaleResolver();
sessionLocaleResolver.setDefaultLocale(new Locale("fa"));
return sessionLocaleResolver;
}
@Bean
public LocalValidatorFactoryBean getValidator() {
LocalValidatorFactoryBean bean = new LocalValidatorFactoryBean();
bean.setValidationMessageSource(messageSource());
return bean;
}
}
View:
<label th:if="${#fields.hasErrors('username')}" th:errors="*{username}"
class="validation-message"></label>