Class TurbineException

java.lang.Object
java.lang.Throwable
java.lang.Exception
org.apache.turbine.util.TurbineException
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
InitializationException, VelocityEmailException

public class TurbineException extends Exception
The base class of all exceptions thrown by Turbine.

It is intended to ease the debugging by carrying on the information about the exception which was caught and provoked throwing the current exception. Catching and rethrowing may occur multiple times, and provided that all exceptions except the first one are descendands of TurbineException, when the exception is finally printed out using any of the printStackTrace() methods, the stacktrace will contain the information about all exceptions thrown and caught on the way.

Running the following program

  1 import org.apache.turbine.util.TurbineException;
  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 TurbineException {
 13          try {
 14              b();
 15          } catch(Exception e) {
 16              throw new TurbineException("foo", e);
 17          }
 18      }
 19
 20      public static void b() throws TurbineException {
 21          try {
 22              c();
 23          } catch(Exception e) {
 24              throw new TurbineException("bar", e);
 25          }
 26      }
 27
 28      public static void c() throws TurbineException {
 29          throw new Exception("baz");
 30      }
 31 }
 

Yields the following stacktrace:

 java.lang.Exception: baz: bar: foo
    at Test.c(Test.java:29)
    at Test.b(Test.java:22)
 rethrown as TurbineException: bar
    at Test.b(Test.java:24)
    at Test.a(Test.java:14)
 rethrown as TurbineException: foo
    at Test.a(Test.java:16)
    at Test.main(Test.java:6)
 
Author:
Rafal Krzewski, Daniel Rall, Quinton McCombs
See Also:
  • Constructor Details

    • TurbineException

      Constructs a new TurbineException without specified detail message.
    • TurbineException

      public TurbineException(String msg)
      Constructs a new TurbineException with specified detail message.
      Parameters:
      msg - The error message.
    • TurbineException

      public TurbineException(Throwable nested)
      Constructs a new TurbineException with specified nested Throwable.
      Parameters:
      nested - The exception or error that caused this exception to be thrown.
    • TurbineException

      public TurbineException(String msg, Throwable nested)
      Constructs a new TurbineException with specified detail message and nested Throwable.
      Parameters:
      msg - The error message.
      nested - The exception or error that caused this exception to be thrown.