Congrats for GF v2 ! Now, let's see if you can solve this one. This would realy
help for people debugging EJB related stuffs.
Quote from http://java.sun.com/javase/6/docs/api/java/lang/Throwable.html
Prior to release 1.4, there were many throwables that had their own non-standard
exception chaining mechanisms ( ExceptionInInitializerError,
ClassNotFoundException, UndeclaredThrowableException, InvocationTargetException,
WriteAbortedException, PrivilegedActionException, PrinterIOException,
RemoteException and NamingException). All of these throwables have been
retrofitted to use the standard exception chaining mechanism, while continuing
to implement their "legacy" chaining mechanisms for compatibility.
Further, as of release 1.4, many general purpose Throwable classes (for example
Exception, RuntimeException, Error) have been retrofitted with constructors that
take a cause. This was not strictly necessary, due to the existence of the
initCause method, but it is more convenient and expressive to delegate to a
constructor that takes a cause.
By convention, class Throwable and its subclasses have two constructors, one
that takes no arguments and one that takes a String argument that can be used to
produce a detail message. Further, those subclasses that might likely have a
cause associated with them should have two more constructors, one that takes a
Throwable (the cause), and one that takes a String (the detail message) and a
Throwable (the cause).
I do think EJBException fall into this category as well