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
    Modifier and Type | Method and Description
    --- | ---
    `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