restored SpringValidatorAdapter's ability to handle bean constraints with property paths (SPR-8895)
This commit is contained in:
parent
27471e0555
commit
aedccec67e
|
|
@ -127,8 +127,13 @@ public class SpringValidatorAdapter implements SmartValidator, javax.validation.
|
||||||
errors.getObjectName(), errorCodes, errorArgs, violation.getMessage());
|
errors.getObjectName(), errorCodes, errorArgs, violation.getMessage());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
Object invalidValue = violation.getInvalidValue();
|
||||||
|
if (!"".equals(field) && invalidValue == violation.getLeafBean()) {
|
||||||
|
// bean constraint with property path: retrieve the actual property value
|
||||||
|
invalidValue = bindingResult.getRawFieldValue(field);
|
||||||
|
}
|
||||||
error = new FieldError(
|
error = new FieldError(
|
||||||
errors.getObjectName(), nestedField, violation.getInvalidValue(), false,
|
errors.getObjectName(), nestedField, invalidValue, false,
|
||||||
errorCodes, errorArgs, violation.getMessage());
|
errorCodes, errorArgs, violation.getMessage());
|
||||||
}
|
}
|
||||||
bindingResult.addError(error);
|
bindingResult.addError(error);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue