commit
1cc453fd38
|
@ -47,9 +47,9 @@ class BindValidationFailureAnalyzer extends AbstractFailureAnalyzer<Throwable> {
|
||||||
private ExceptionDetails getBindValidationExceptionDetails(Throwable rootFailure) {
|
private ExceptionDetails getBindValidationExceptionDetails(Throwable rootFailure) {
|
||||||
BindValidationException validationException = findCause(rootFailure, BindValidationException.class);
|
BindValidationException validationException = findCause(rootFailure, BindValidationException.class);
|
||||||
if (validationException != null) {
|
if (validationException != null) {
|
||||||
BindException target = findCause(rootFailure, BindException.class);
|
BindException bindException = findCause(rootFailure, BindException.class);
|
||||||
List<ObjectError> errors = validationException.getValidationErrors().getAllErrors();
|
List<ObjectError> errors = validationException.getValidationErrors().getAllErrors();
|
||||||
return new ExceptionDetails(errors, target, validationException);
|
return new ExceptionDetails(errors, bindException.getTarget().getType(), validationException);
|
||||||
}
|
}
|
||||||
org.springframework.validation.BindException bindException = findCause(rootFailure,
|
org.springframework.validation.BindException bindException = findCause(rootFailure,
|
||||||
org.springframework.validation.BindException.class);
|
org.springframework.validation.BindException.class);
|
||||||
|
|
|
@ -63,9 +63,11 @@ class BindValidationFailureAnalyzerTests {
|
||||||
@Test
|
@Test
|
||||||
void bindExceptionWithFieldErrorsDueToValidationFailure() {
|
void bindExceptionWithFieldErrorsDueToValidationFailure() {
|
||||||
FailureAnalysis analysis = performAnalysis(FieldValidationFailureConfiguration.class);
|
FailureAnalysis analysis = performAnalysis(FieldValidationFailureConfiguration.class);
|
||||||
assertThat(analysis.getDescription()).contains(failure("test.foo.foo", "null", "must not be null"));
|
assertThat(analysis.getDescription()).contains(failure("test.foo.foo", "null", "must not be null"))
|
||||||
assertThat(analysis.getDescription()).contains(failure("test.foo.value", "0", "at least five"));
|
.contains(failure("test.foo.value", "0", "at least five"))
|
||||||
assertThat(analysis.getDescription()).contains(failure("test.foo.nested.bar", "null", "must not be null"));
|
.contains(failure("test.foo.nested.bar", "null", "must not be null"))
|
||||||
|
.contains(
|
||||||
|
"Binding to target org.springframework.boot.diagnostics.analyzer.BindValidationFailureAnalyzerTests$FieldValidationFailureProperties failed:");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
Loading…
Reference in New Issue