org.springframework.beans.factory

## Class BeanCreationException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - java.lang.RuntimeException
      - - org.springframework.core.NestedRuntimeException
        - - org.springframework.beans.BeansException
          - - org.springframework.beans.FatalBeanException
            - - org.springframework.beans.factory.BeanCreationException

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  BeanCreationNotAllowedException, BeanCurrentlyInCreationException, BeanIsAbstractException, UnsatisfiedDependencyException

    public class BeanCreationException
    extends FatalBeanException

Exception thrown when a BeanFactory encounters an error when attempting to create a bean from a bean definition.

Author:
  Juergen Hoeller
See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`BeanCreationException(String msg)` Create a new BeanCreationException.
`BeanCreationException(String beanName, String msg)` Create a new BeanCreationException.
`BeanCreationException(String resourceDescription, String beanName, String msg)` Create a new BeanCreationException.
`BeanCreationException(String resourceDescription, String beanName, String msg, Throwable cause)` Create a new BeanCreationException.
`BeanCreationException(String beanName, String msg, Throwable cause)` Create a new BeanCreationException.
`BeanCreationException(String msg, Throwable cause)` Create a new BeanCreationException.

### Method Summary

Methods
`void` `addRelatedCause(Throwable ex)` Add a related cause to this bean creation exception, not being a direct cause of the failure but having occured earlier in the creation of the same bean instance.
`boolean` `contains(Class exClass)` Check whether this exception contains an exception of the given type: either it is of the given class itself or it contains a nested cause of the given type.
`String` `getBeanName()` Return the name of the bean requested, if any.
`Throwable[]` `getRelatedCauses()` Return the related causes, if any.
`String` `getResourceDescription()` Return the description of the resource that the bean definition came from, if any.
`void` `printStackTrace(PrintStream ps)`
`void` `printStackTrace(PrintWriter pw)`
`String` `toString()`

### Methods inherited from class org.springframework.beans.BeansException

`equals, hashCode`

### Methods inherited from class org.springframework.core.NestedRuntimeException

`getMessage, getMostSpecificCause, getRootCause`

### Methods inherited from class java.lang.Throwable

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, setStackTrace`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### BeanCreationException

    public BeanCreationException(String msg)

Create a new BeanCreationException.

Parameters:
  `msg` - the detail message

#### BeanCreationException

    public BeanCreationException(String msg,
                         Throwable cause)

Create a new BeanCreationException.

Parameters:
  `msg` - the detail message
  `cause` - the root cause

#### BeanCreationException

    public BeanCreationException(String beanName,
                         String msg)

Create a new BeanCreationException.

Parameters:
  `beanName` - the name of the bean requested
  `msg` - the detail message

#### BeanCreationException

    public BeanCreationException(String beanName,
                         String msg,
                         Throwable cause)

Create a new BeanCreationException.

Parameters:
  `beanName` - the name of the bean requested
  `msg` - the detail message
  `cause` - the root cause

#### BeanCreationException

    public BeanCreationException(String resourceDescription,
                         String beanName,
                         String msg)

Create a new BeanCreationException.

Parameters:
  `resourceDescription` - description of the resource that the bean definition came from
  `beanName` - the name of the bean requested
  `msg` - the detail message

#### BeanCreationException

    public BeanCreationException(String resourceDescription,
                         String beanName,
                         String msg,
                         Throwable cause)

Create a new BeanCreationException.

Parameters:
  `resourceDescription` - description of the resource that the bean definition came from
  `beanName` - the name of the bean requested
  `msg` - the detail message
  `cause` - the root cause

### Method Detail

#### getBeanName

    public String getBeanName()

Return the name of the bean requested, if any.

#### getResourceDescription

    public String getResourceDescription()

Return the description of the resource that the bean definition came from, if any.

#### addRelatedCause

    public void addRelatedCause(Throwable ex)

Add a related cause to this bean creation exception, not being a direct cause of the failure but having occured earlier in the creation of the same bean instance.

Parameters:
  `ex` - the related cause to add

#### getRelatedCauses

    public Throwable[] getRelatedCauses()

Return the related causes, if any.

Returns:
  the array of related causes, or `null` if none

#### toString

    public String toString()

Overrides:
  `toString` in class `Throwable`

#### printStackTrace

    public void printStackTrace(PrintStream ps)

Overrides:
  `printStackTrace` in class `Throwable`

#### printStackTrace

    public void printStackTrace(PrintWriter pw)

Overrides:
  `printStackTrace` in class `Throwable`

#### contains

    public boolean contains(Class exClass)

Description copied from class: `NestedRuntimeException`
Check whether this exception contains an exception of the given type: either it is of the given class itself or it contains a nested cause of the given type.

Overrides:
  `contains` in class `NestedRuntimeException`
Parameters:
  `exClass` - the exception type to look for
Returns:
  whether there is a nested exception of the specified type