This exception is thrown by
doPrivileged(PrivilegedExceptionAction)
and
doPrivileged(PrivilegedExceptionAction, AccessControlContext context)
to indicate that the action being performed threw a checked exception. The exception thrown by the action can be obtained by calling the
getException
method. In effect, an
PrivilegedActionException
is a "wrapper" for an exception thrown by a privileged action.
As of release 1.4, this exception has been retrofitted to conform to the general purpose exception-chaining mechanism. The "exception thrown by the privileged computation" that is provided at construction time and accessed via the {@link #getException()} method is now known as thecause, and may be accessed via the {@link Throwable#getCause()}method, as well as the aforementioned "legacy method."
@see PrivilegedExceptionAction
@see AccessController#doPrivileged(PrivilegedExceptionAction)
@see AccessController#doPrivileged(PrivilegedExceptionAction,AccessControlContext)