org.apache.commons.lang.exception
public class NestableException extends Exception implements Nestable
NestedException
, when the
exception is finally printed out using any of the
printStackTrace()
methods, the stack trace will contain
the information about all exceptions thrown and caught on
the way.
Running the following program
1 import org.apache.commons.lang.exception.NestableException; 2 3 public class Test { 4 public static void main( String[] args ) { 5 try { 6 a(); 7 } catch(Exception e) { 8 e.printStackTrace(); 9 } 10 } 11 12 public static void a() throws Exception { 13 try { 14 b(); 15 } catch(Exception e) { 16 throw new NestableException("foo", e); 17 } 18 } 19 20 public static void b() throws Exception { 21 try { 22 c(); 23 } catch(Exception e) { 24 throw new NestableException("bar", e); 25 } 26 } 27 28 public static void c() throws Exception { 29 throw new Exception("baz"); 30 } 31 }
Yields the following stack trace:
org.apache.commons.lang.exception.NestableException: foo at Test.a(Test.java:16) at Test.main(Test.java:6) Caused by: org.apache.commons.lang.exception.NestableException: bar at Test.b(Test.java:24) at Test.a(Test.java:14) ... 1 more Caused by: java.lang.Exception: baz at Test.c(Test.java:29) at Test.b(Test.java:22) ... 2 more
Since: 1.0
Version: $Id: NestableException.java 491651 2007-01-01 22:01:32Z ggregory $
Field Summary | |
---|---|
protected NestableDelegate | delegate
The helper instance which contains much of the code which we
delegate to. |
Constructor Summary | |
---|---|
NestableException()
Constructs a new NestableException without specified
detail message. | |
NestableException(String msg)
Constructs a new NestableException with specified
detail message.
| |
NestableException(Throwable cause)
Constructs a new NestableException with specified
nested Throwable .
| |
NestableException(String msg, Throwable cause)
Constructs a new NestableException with specified
detail message and nested Throwable .
|
Method Summary | |
---|---|
Throwable | getCause() |
String | getMessage()
Returns the detail message string of this throwable. |
String | getMessage(int index) |
String[] | getMessages() |
Throwable | getThrowable(int index) |
int | getThrowableCount() |
Throwable[] | getThrowables() |
int | indexOfThrowable(Class type) |
int | indexOfThrowable(Class type, int fromIndex) |
void | printPartialStackTrace(PrintWriter out) |
void | printStackTrace() |
void | printStackTrace(PrintStream out) |
void | printStackTrace(PrintWriter out) |
NestableException
without specified
detail message.NestableException
with specified
detail message.
Parameters: msg The error message.
NestableException
with specified
nested Throwable
.
Parameters: cause the exception or error that caused this exception to be thrown
NestableException
with specified
detail message and nested Throwable
.
Parameters: msg the error message cause the exception or error that caused this exception to be thrown
Returns: String message string of the throwable