package org.springframework.core;
Handy class for wrapping runtime
Exceptions with a root cause.
This class is abstract to force the programmer to extend
the class. getMessage will include nested exception
information; printStackTrace and other like methods will
delegate to the wrapped exception, if any.
The similarity between this class and the NestedCheckedException
class is unavoidable, as Java forces these two classes to have different
superclasses (ah, the inflexibility of concrete inheritance!).
Use serialVersionUID from Spring 1.2 for interoperability
Construct a
NestedRuntimeException with the specified detail message.
- Parameters:
msg the detail message
Construct a
NestedRuntimeException with the specified detail message
and nested exception.
- Parameters:
msg the detail messagecause the nested exception
Return the detail message, including the message from the nested exception
if there is one.
Retrieve the innermost cause of this exception, if any.
- Returns:
- the innermost exception, or
null if none - Since:
- 2.0
while (cause != null && cause != rootCause) { Retrieve the most specific cause of this exception, that is,
either the innermost cause (root cause) or this exception itself.
Differs from getRootCause() in that it falls back
to the present exception if there is no root cause.
- Returns:
- the most specific cause (never
null) - Since:
- 2.0.3
return (rootCause != null ? rootCause : this);
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.
- Parameters:
exType the exception type to look for- Returns:
- whether there is a nested exception of the specified type