Browse Source

UnsatisfiedDependencyException avoids duplicate nested exception message

Issue: SPR-14607
(cherry picked from commit 93d2287)
pull/1146/head
Juergen Hoeller 10 years ago
parent
commit
f735d12247
  1. 11
      spring-beans/src/main/java/org/springframework/beans/factory/UnsatisfiedDependencyException.java

11
spring-beans/src/main/java/org/springframework/beans/factory/UnsatisfiedDependencyException.java

@ -18,6 +18,7 @@ package org.springframework.beans.factory; @@ -18,6 +18,7 @@ package org.springframework.beans.factory;
import org.springframework.beans.BeansException;
import org.springframework.util.ClassUtils;
import org.springframework.util.StringUtils;
/**
* Exception thrown when a bean depends on other beans or simple properties
@ -46,7 +47,7 @@ public class UnsatisfiedDependencyException extends BeanCreationException { @@ -46,7 +47,7 @@ public class UnsatisfiedDependencyException extends BeanCreationException {
super(resourceDescription, beanName,
"Unsatisfied dependency expressed through bean property '" + propertyName + "'" +
(msg != null ? ": " + msg : ""));
(StringUtils.hasLength(msg) ? ": " + msg : ""));
}
/**
@ -59,7 +60,7 @@ public class UnsatisfiedDependencyException extends BeanCreationException { @@ -59,7 +60,7 @@ public class UnsatisfiedDependencyException extends BeanCreationException {
public UnsatisfiedDependencyException(
String resourceDescription, String beanName, String propertyName, BeansException ex) {
this(resourceDescription, beanName, propertyName, (ex != null ? ex.getMessage() : ""));
this(resourceDescription, beanName, propertyName, "");
initCause(ex);
}
@ -74,7 +75,9 @@ public class UnsatisfiedDependencyException extends BeanCreationException { @@ -74,7 +75,9 @@ public class UnsatisfiedDependencyException extends BeanCreationException {
public UnsatisfiedDependencyException(
String resourceDescription, String beanName, InjectionPoint injectionPoint, String msg) {
super(resourceDescription, beanName, "Unsatisfied dependency expressed through " + injectionPoint + ": " + msg);
super(resourceDescription, beanName,
"Unsatisfied dependency expressed through " + injectionPoint +
(StringUtils.hasLength(msg) ? ": " + msg : ""));
this.injectionPoint = injectionPoint;
}
@ -89,7 +92,7 @@ public class UnsatisfiedDependencyException extends BeanCreationException { @@ -89,7 +92,7 @@ public class UnsatisfiedDependencyException extends BeanCreationException {
public UnsatisfiedDependencyException(
String resourceDescription, String beanName, InjectionPoint injectionPoint, BeansException ex) {
this(resourceDescription, beanName, injectionPoint, (ex != null ? ex.getMessage() : ""));
this(resourceDescription, beanName, injectionPoint, "");
initCause(ex);
}

Loading…
Cancel
Save