'BindingResult.rejectValue does not find value from ValidationMessages.properties
We're using spring with annotations, and our annotated fields get validated fine and error messages get displayed from ValidationMessages.properties, but for custom validation message from ValidationMessages.properties does not seem to be used.
Here's the example:
Validatior (also the form):
public void validateSpecial(BindingResult result) {
if(password != null && !password.equals(passwordConfirm)){
result.rejectValue("passwordConfirm", "emailform.passwordConfirm.passwordsDontMatch", new Object[]{}, "This message is in the code.");
... }
ValidationMessages.properties:
...
emailform.passwordConfirm.passwordsDontMatch = Passwords don't match
...
Controller:
...
form.validateSpecial(result);
if (result.hasErrors()) {
return "/path/to/input/page";
}
...
The error that I get is "This message is in the code", not "Passwords don't match"
Solution 1:[1]
This solved the problem, thanks @Kartik
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basenames">
<list>
<value>ValidationMessages</value>
<value>ApplicationResources</value>
</list>
</property>
</bean>
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Mike |
