|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.lang.Throwable java.lang.Exception java.lang.RuntimeException org.springframework.core.NestedRuntimeException
public abstract class NestedRuntimeException
Handy class for wrapping runtime Exceptions
with a root cause.
This time-honoured technique is no longer necessary in Java 1.4, which finally provides built-in support for exception nesting. Thus exceptions in applications written to use Java 1.4 need not extend this class. To ease migration, this class mirrors Java 1.4's nested exceptions as closely as possible.
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!).
getMessage()
,
printStackTrace(java.io.PrintStream)
,
NestedCheckedException
,
Serialized FormConstructor Summary | |
---|---|
NestedRuntimeException(String msg)
Construct a NestedRuntimeException with the specified detail message. |
|
NestedRuntimeException(String msg,
Throwable cause)
Construct a NestedRuntimeException with the specified detail message
and nested exception. |
Method Summary | |
---|---|
boolean |
contains(Class exType)
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. |
Throwable |
getCause()
Return the nested cause, or null if none. |
String |
getMessage()
Return the detail message, including the message from the nested exception if there is one. |
Throwable |
getMostSpecificCause()
Retrieve the most specific cause of this exception, that is, either the innermost cause (root cause) or this exception itself. |
Throwable |
getRootCause()
Retrieve the innermost cause of this exception, if any. |
void |
printStackTrace(PrintStream ps)
Print the composite message and the embedded stack trace to the specified stream. |
void |
printStackTrace(PrintWriter pw)
Print the composite message and the embedded stack trace to the specified writer. |
Methods inherited from class java.lang.Throwable |
---|
fillInStackTrace, getLocalizedMessage, getStackTrace, initCause, printStackTrace, setStackTrace, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public NestedRuntimeException(String msg)
NestedRuntimeException
with the specified detail message.
msg
- the detail messagepublic NestedRuntimeException(String msg, Throwable cause)
NestedRuntimeException
with the specified detail message
and nested exception.
msg
- the detail messagecause
- the nested exceptionMethod Detail |
---|
public Throwable getCause()
null
if none.
Note that this will only check one level of nesting.
Use getRootCause()
to retrieve the innermost cause.
getCause
in class Throwable
public String getMessage()
getMessage
in class Throwable
public void printStackTrace(PrintStream ps)
printStackTrace
in class Throwable
ps
- the print streampublic void printStackTrace(PrintWriter pw)
printStackTrace
in class Throwable
pw
- the print writerpublic Throwable getRootCause()
Currently just traverses NestedRuntimeException
causes.
Will use the JDK 1.4 exception cause mechanism once Spring requires JDK 1.4.
null
if nonepublic Throwable getMostSpecificCause()
Differs from getRootCause()
in that it falls back
to the present exception if there is no root cause.
null
)public boolean contains(Class exType)
Currently just traverses NestedRuntimeException
causes.
Will use the JDK 1.4 exception cause mechanism once Spring requires JDK 1.4.
exType
- the exception type to look for
|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |