Category Archives: Exeptions

Getting the details from a Stackktrace

Introduction

Java code can throw exceptions. This comes in the form of the Stacktrace. When this happens you want to be able to get some more details. The example below shows how this can be achieved.

try {
    // My code
} catch (Throwable e) {
    // Get the stack trace
    StackTraceElement stack[] =
    e.getStackTrace();

    // stack[0] contains the method that created
    // the exception.
    // stack[stack.length-1] contains the oldest
    // method call.
    // Enumerate each stack element.
    for (int i=0; i<stack.length; i++) {
        String filename = stack[i].getFileName();
        if (filename == null) {
            // The source filename is not
            // available
        }
        String className =
        stack[i].getClassName();
        String methodName =
        stack[i].getMethodName();
        boolean isNativeMethod =
        stack[i].isNativeMethod();
        int line = stack[i].getLineNumber();
    }
}