[
https://issues.apache.org/jira/browse/DELTASPIKE-357?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13645682#comment-13645682
]
Jason Porter commented on DELTASPIKE-357:
-----------------------------------------
We did it this way to support handling multiple exception types of the same
type the same way. The classic example is rolling back a transaction on any
PersistenceException. You may want to do some other things as well for each
specific exception. When I wrote this extension in Seam 3 it felt like this
would more often be the case. Also, in your example the ordinal will not help
in any way because those are two different handlers.
> ExceptionHandler should call exception hierarchies bottom up
> ------------------------------------------------------------
>
> Key: DELTASPIKE-357
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-357
> Project: DeltaSpike
> Issue Type: Bug
> Components: ExceptionControl-Module
> Affects Versions: 0.3-incubating
> Reporter: Maik Ebert
>
> I would assume that when you have an exception hierarchy DeltaSpike would
> call handlers for the sub class before it call handlers for the super class.
> But that's not the case.
> Assume you have:
> {code}
> @ExceptionHandler
> public class AdminWebExceptionHandler {
> public void handleAccessDeniedException(@Handles @FacesRequest
> ExceptionEvent<AccessDeniedException> exceptionEvent, FacesContext
> facesContext) {
> }
> public void handleRuntimeException(@Handles(ordinal = -1) @FacesRequest
> ExceptionEvent<RuntimeException> exceptionEvent, FacesContext facesContext) {
> }
> }
> {code}
> In that case handleRuntimeException() is called.
> I would except to have handleAccessDeniedException() called instead.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira