org.springframework.beans.factory.parsing

## Class Problem

- java.lang.Object
- - org.springframework.beans.factory.parsing.Problem

-     public class Problem
      extends Object

  Represents a problem with a bean definition configuration. Mainly serves as common argument passed into a `ProblemReporter`.

  May indicate a potentially fatal problem (an error) or just a warning.

  Since:
    2.0
  Author:
    Rob Harrop, Juergen Hoeller
  See Also:
    `ProblemReporter`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Problem(String message, Location location)` Create a new instance of the `Problem` class.
    `Problem(String message, Location location, ParseState parseState)` Create a new instance of the `Problem` class.
    `Problem(String message, Location location, ParseState parseState, Throwable rootCause)` Create a new instance of the `Problem` class.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Location` | `getLocation()` Get the location within a bean configuration source that triggered the error.
    `String` | `getMessage()` Get the message detailing the problem.
    `ParseState` | `getParseState()` Get the `ParseState` at the time of the error (may be `null`).
    `String` | `getResourceDescription()` Get the description of the bean configuration source that triggered the error, as contained within this Problem's Location object.
    `Throwable` | `getRootCause()` Get the underlying expection that caused the error (may be `null`).
    `String` | `toString()`

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

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

- - ### Constructor Detail

    - #### Problem

          public Problem(String message,
                 Location location)

      Create a new instance of the `Problem` class.
      Parameters:
        `message` - a message detailing the problem
        `location` - the location within a bean configuration source that triggered the error

    - #### Problem

          public Problem(String message,
                 Location location,
                 ParseState parseState)

      Create a new instance of the `Problem` class.
      Parameters:
        `message` - a message detailing the problem
        `parseState` - the `ParseState` at the time of the error
        `location` - the location within a bean configuration source that triggered the error

    - #### Problem

          public Problem(String message,
                 Location location,
                 ParseState parseState,
                 Throwable rootCause)

      Create a new instance of the `Problem` class.
      Parameters:
        `message` - a message detailing the problem
        `rootCause` - the underlying expection that caused the error (may be `null`)
        `parseState` - the `ParseState` at the time of the error
        `location` - the location within a bean configuration source that triggered the error

  - ### Method Detail

    - #### getMessage

          public String getMessage()

      Get the message detailing the problem.

    - #### getLocation

          public Location getLocation()

      Get the location within a bean configuration source that triggered the error.

    - #### getResourceDescription

          public String getResourceDescription()

      Get the description of the bean configuration source that triggered the error, as contained within this Problem's Location object.
      See Also:
        `getLocation()`

    - #### getParseState

          public ParseState getParseState()

      Get the `ParseState` at the time of the error (may be `null`).

    - #### getRootCause

          public Throwable getRootCause()

      Get the underlying expection that caused the error (may be `null`).

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`