public class ExceptionHandlerImpl extends ExceptionHandler
The default implementation of ExceptionHandler
for JSF 2.0.
As an implementation note, if changes going forward are required here,
review the ExceptionHandler
implementation within
javax.faces.webapp.PreJsf2ExceptionHandlerFactory
. The code
is, in most cases, quite similar.
Modifier and Type | Field and Description |
---|---|
static Level |
INCIDENT_ERROR |
Constructor and Description |
---|
ExceptionHandlerImpl() |
ExceptionHandlerImpl(boolean errorPagePresent) |
Modifier and Type | Method and Description |
---|---|
ExceptionQueuedEvent |
getHandledExceptionQueuedEvent()
Return the first
|
Iterable<ExceptionQueuedEvent> |
getHandledExceptionQueuedEvents()
The default implementation must
return an |
Throwable |
getRootCause(Throwable t)
Unwrap the argument |
Iterable<ExceptionQueuedEvent> |
getUnhandledExceptionQueuedEvents()
Return an |
void |
handle()
Take action to handle the
|
boolean |
isListenerForSource(Object source)
This method must return
true if and only if this
listener instance is interested in receiving events from the
instance referenced by the source parameter. |
void |
processEvent(SystemEvent event)
When called, the listener can assume that any guarantees given
in the javadoc for the specific
SystemEvent
subclass are true. |
public static final Level INCIDENT_ERROR
public ExceptionHandlerImpl()
public ExceptionHandlerImpl(boolean errorPagePresent)
public ExceptionQueuedEvent getHandledExceptionQueuedEvent()
ExceptionHandler
Return the first
ExceptionQueuedEvent
handled by this handler.
getHandledExceptionQueuedEvent
in class ExceptionHandler
ExceptionQueuedEvent
.public void handle() throws FacesException
ExceptionHandler
Take action to handle the
Exception
instances residing inside the ExceptionQueuedEvent
instances that have been queued by calls to
Application().publishEvent(ExceptionQueuedEvent.class,
eventContext)
. The requirements of the default
implementation are detailed in section JSF.6.2.1.
handle
in class ExceptionHandler
FacesException
- if and only if a problem occurs while
performing the algorithm to handle the Exception
, not
as a means of conveying a handled Exception
itself.ExceptionHandler.handle()
public boolean isListenerForSource(Object source)
ExceptionHandler
This method must return true
if and only if this
listener instance is interested in receiving events from the
instance referenced by the source
parameter.
isListenerForSource
in interface SystemEventListener
isListenerForSource
in class ExceptionHandler
source
- the source that is inquiring about the
appropriateness of sending an event to this listener instance.ExceptionHandler.isListenerForSource(Object)
public void processEvent(SystemEvent event) throws AbortProcessingException
ExceptionHandler
When called, the listener can assume that any guarantees given
in the javadoc for the specific SystemEvent
subclass are true.
processEvent
in interface SystemEventListener
processEvent
in class ExceptionHandler
event
- the SystemEvent
instance that
is being processed.AbortProcessingException
- if lifecycle processing should
cease for this request.ExceptionHandler.processEvent(javax.faces.event.SystemEvent)
public Throwable getRootCause(Throwable t)
ExceptionHandler
Unwrap the argument t
until the unwrapping encounters an Object whose
getClass()
is not equal to
FacesException.class
or
javax.el.ELException.class
. If there is no root cause, null
is returned.
getRootCause
in class ExceptionHandler
t
- passed-in wrapped Throwable
.ExceptionHandler.getRootCause(Throwable)
public Iterable<ExceptionQueuedEvent> getUnhandledExceptionQueuedEvents()
ExceptionHandler
Return an Iterable
over
all ExceptionQueuedEvent
s that have not yet been handled
by the ExceptionHandler.handle()
method.
getUnhandledExceptionQueuedEvents
in class ExceptionHandler
ExceptionQueuedEvent
s.ExceptionHandler.getUnhandledExceptionQueuedEvents()
public Iterable<ExceptionQueuedEvent> getHandledExceptionQueuedEvents()
ExceptionHandler
The default implementation must
return an Iterable
over all
ExceptionQueuedEvent
s that have been handled by the ExceptionHandler.handle()
method.
getHandledExceptionQueuedEvents
in class ExceptionHandler
Iterable
over all ExceptionQueuedEvent
s.ExceptionHandler.getHandledExceptionQueuedEvents()
Comments to: faces-dev@eclipse.org.
Copyright © 2019 Eclipse Foundation. All rights reserved.
Use is subject to license terms.