- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.lang.RuntimeException
-
- java.lang.reflect.UndeclaredThrowableException
-
- All Implemented Interfaces:
Serializable
public class UndeclaredThrowableException extends RuntimeException
Thrown by a method invocation on a proxy instance if its invocation handler'sinvoke
method throws a checked exception (aThrowable
that is not assignable toRuntimeException
orError
) that is not assignable to any of the exception types declared in thethrows
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 thegetUndeclaredThrowable()
method.UndeclaredThrowableException
extendsRuntimeException
, 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
getUndeclaredThrowable()
method is now known as the cause, and may be accessed via theThrowable.getCause()
method, as well as the aforementioned "legacy method."- Since:
- 1.3
- See Also:
InvocationHandler
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description UndeclaredThrowableException(Throwable undeclaredThrowable)
Constructs anUndeclaredThrowableException
with the specifiedThrowable
.UndeclaredThrowableException(Throwable undeclaredThrowable, String s)
Constructs anUndeclaredThrowableException
with the specifiedThrowable
and a detail message.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Throwable
getCause()
Returns the cause of this exception (theThrowable
instance wrapped in thisUndeclaredThrowableException
, which may benull
).Throwable
getUndeclaredThrowable()
Returns theThrowable
instance wrapped in thisUndeclaredThrowableException
, which may benull
.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
-
-
-
Constructor Detail
-
UndeclaredThrowableException
public UndeclaredThrowableException(Throwable undeclaredThrowable)
Constructs anUndeclaredThrowableException
with the specifiedThrowable
.- Parameters:
undeclaredThrowable
- the undeclared checked exception that was thrown
-
UndeclaredThrowableException
public UndeclaredThrowableException(Throwable undeclaredThrowable, String s)
Constructs anUndeclaredThrowableException
with the specifiedThrowable
and a detail message.- Parameters:
undeclaredThrowable
- the undeclared checked exception that was throwns
- the detail message
-
-
Method Detail
-
getUndeclaredThrowable
public Throwable getUndeclaredThrowable()
Returns theThrowable
instance wrapped in thisUndeclaredThrowableException
, which may benull
.This method predates the general-purpose exception chaining facility. The
Throwable.getCause()
method is now the preferred means of obtaining this information.- Returns:
- the undeclared checked exception that was thrown
-
-