org.springframework.web.util

## Class NestedServletException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - javax.servlet.ServletException
      - - org.springframework.web.util.NestedServletException

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  ServletRequestBindingException

    public class NestedServletException
    extends ServletException

Subclass of `ServletException` that properly handles a root cause in terms of message and stacktrace, just like NestedChecked/RuntimeException does.

Note that the plain ServletException doesn't expose its root cause at all, neither in the exception message nor in printed stack traces! While this might be fixed in later Servlet API variants (which even differ per vendor for the same API version), it is not reliably available on Servlet 2.4 (the minimum version required by Spring 3.x), which is why we need to do it ourselves.

The similarity between this class and the NestedChecked/RuntimeException class is unavoidable, as this class needs to derive from ServletException.

Since:
  1.2.5
Author:
  Juergen Hoeller
See Also:
  `getMessage()`, `Throwable.printStackTrace()`, `NestedCheckedException`, `NestedRuntimeException`, Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`NestedServletException(String msg)` Construct a `NestedServletException` with the specified detail message.
`NestedServletException(String msg, Throwable cause)` Construct a `NestedServletException` with the specified detail message and nested exception.

### Method Summary

Methods
`String` `getMessage()` Return the detail message, including the message from the nested exception if there is one.

### Methods inherited from class javax.servlet.ServletException

`getRootCause`

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

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

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

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

### Constructor Detail

#### NestedServletException

    public NestedServletException(String msg)

Construct a `NestedServletException` with the specified detail message.

Parameters:
  `msg` - the detail message

#### NestedServletException

    public NestedServletException(String msg,
                          Throwable cause)

Construct a `NestedServletException` with the specified detail message and nested exception.

Parameters:
  `msg` - the detail message
  `cause` - the nested exception

### Method Detail

#### getMessage

    public String getMessage()

Return the detail message, including the message from the nested exception if there is one.

Overrides:
  `getMessage` in class `Throwable`