FileDocCategorySizeDatePackage
UndeclaredThrowableException.javaAPI DocJava SE 6 API3683Tue Jun 10 00:25:40 BST 2008java.lang.reflect

UndeclaredThrowableException

public class UndeclaredThrowableException extends RuntimeException
Thrown by a method invocation on a proxy instance if its invocation handler's {@link InvocationHandler#invoke invoke} method throws a checked exception (a Throwable that is not assignable to RuntimeException or Error) that is not assignable to any of the exception types declared in the throws clause of the method that was invoked on the proxy instance and dispatched to the invocation handler.

An UndeclaredThrowableException instance contains the undeclared checked exception that was thrown by the invocation handler, and it can be retrieved with the getUndeclaredThrowable() method. UndeclaredThrowableException extends RuntimeException, so it is an unchecked exception that wraps a checked exception.

As of release 1.4, this exception has been retrofitted to conform to the general purpose exception-chaining mechanism. The "undeclared checked exception that was thrown by the invocation handler" that may be provided at construction time and accessed via the {@link #getUndeclaredThrowable()} method is now known as the cause, and may be accessed via the {@link Throwable#getCause()} method, as well as the aforementioned "legacy method."

author
Peter Jones
version
1.15, 06/04/07
see
InvocationHandler
since
1.3

Fields Summary
static final long
serialVersionUID
private Throwable
undeclaredThrowable
the undeclared checked exception that was thrown
Constructors Summary
public UndeclaredThrowableException(Throwable undeclaredThrowable)
Constructs an UndeclaredThrowableException with the specified Throwable.

param
undeclaredThrowable the undeclared checked exception that was thrown


            	    		       
       
	super((Throwable) null);  // Disallow initCause
        this.undeclaredThrowable = undeclaredThrowable;
    
public UndeclaredThrowableException(Throwable undeclaredThrowable, String s)
Constructs an UndeclaredThrowableException with the specified Throwable and a detail message.

param
undeclaredThrowable the undeclared checked exception that was thrown
param
s the detail message

	super(s, null);  // Disallow initCause
        this.undeclaredThrowable = undeclaredThrowable;
    
Methods Summary
public java.lang.ThrowablegetCause()
Returns the cause of this exception (the Throwable instance wrapped in this UndeclaredThrowableException, which may be null).

return
the cause of this exception.
since
1.4

        return undeclaredThrowable;
    
public java.lang.ThrowablegetUndeclaredThrowable()
Returns the Throwable instance wrapped in this UndeclaredThrowableException, which may be null.

This method predates the general-purpose exception chaining facility. The {@link Throwable#getCause()} method is now the preferred means of obtaining this information.

return
the undeclared checked exception that was thrown

        return undeclaredThrowable;