public class NestedCheckedException
extends java.lang.Exception
Copied from Spring framework to keep Java 1.3 compatibility.
Handy class for wrapping checked Exceptions with a root cause.
This time-honored 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.
Abstract to force the programmer to extend the class. getMessage
will include nested exception information; printStackTrace etc will
delegate to the wrapped exception, if any.
The similarity between this class and the NestedRuntimeException class is unavoidable, as Java forces these two classes to have different superclasses (ah, the inflexibility of concrete inheritance!).
As discussed in Expert One-On-One J2EE Design and Development, runtime exceptions are often a better alternative to checked exceptions. However, all exceptions should preserve their stack trace, if caused by a lower-level exception.
getMessage(),
printStackTrace(java.io.PrintStream),
NestedRuntimeException,
Serialized Form| Constructor and Description |
|---|
NestedCheckedException()
Construct a
NestedCheckedException with no message or exception |
NestedCheckedException(java.lang.String msg)
Construct a
NestedCheckedException with the specified detail message. |
NestedCheckedException(java.lang.String msg,
java.lang.Throwable ex)
Construct a
NestedCheckedException with the specified detail message
and nested exception. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
contains(java.lang.Class exClass)
Check whether this exception contains an exception of the given class:
either it is of the given class itself or it contains a nested cause
of the given class.
|
java.lang.Throwable |
getCause()
Return the nested cause, or
null if none. |
java.lang.String |
getMessage()
Return the detail message, including the message from the nested exception
if there is one.
|
void |
printStackTrace(java.io.PrintStream ps)
Print the composite message and the embedded stack trace to the specified stream.
|
void |
printStackTrace(java.io.PrintWriter pw)
Print the composite message and the embedded stack trace to the specified print writer.
|
public NestedCheckedException()
NestedCheckedException with no message or exceptionpublic NestedCheckedException(java.lang.String msg)
NestedCheckedException with the specified detail message.msg - the detail messagepublic NestedCheckedException(java.lang.String msg,
java.lang.Throwable ex)
NestedCheckedException with the specified detail message
and nested exception.msg - the detail messageex - the nested exceptionpublic java.lang.Throwable getCause()
null if none.getCause in class java.lang.Throwablepublic java.lang.String getMessage()
getMessage in class java.lang.Throwablepublic void printStackTrace(java.io.PrintStream ps)
printStackTrace in class java.lang.Throwableps - the print streampublic void printStackTrace(java.io.PrintWriter pw)
printStackTrace in class java.lang.Throwablepw - the print writerpublic boolean contains(java.lang.Class exClass)
Currently just traverses NestedCheckedException causes. Will use the JDK 1.4 exception cause mechanism once Spring requires JDK 1.4.
exClass - the exception class to look forCopyright © 2004-2016 The Apache Software Foundation. All Rights Reserved.