You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Dennis Kieselhorst (JIRA)" <ji...@apache.org> on 2017/09/04 11:14:00 UTC

[jira] [Updated] (CXF-7473) ExceptionMapper class hierarchies: incompatible ExceptionMapper selected

     [ https://issues.apache.org/jira/browse/CXF-7473?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dennis Kieselhorst updated CXF-7473:
------------------------------------
    Fix Version/s: 3.2.0
                   3.1.13

> ExceptionMapper class hierarchies: incompatible ExceptionMapper selected
> ------------------------------------------------------------------------
>
>                 Key: CXF-7473
>                 URL: https://issues.apache.org/jira/browse/CXF-7473
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 3.1.11, 3.1.12
>            Reporter: Jocelyn Lepage
>             Fix For: 3.1.13, 3.2.0
>
>
> CXF seems to select an incompatible ExceptionMapper when using class hierarchies.
> More precisely, if I define an abstract exception class like following:
> {code:java}
> @Provider
> public abstract class AbstractExceptionMapper<E extends Throwable> implements ExceptionMapper<E> {
> ...
> {code}
> Then I define a concrete one for IllegalArgumentExceptions:
> {code:java}
> public class IllegalArgumentExceptionMapper extends AbstractExceptionMapper<IllegalArgumentException> {
> ...
> {code}
> IllegalArgumentExceptionMapper will then be selected even for RuntimeException subtypes unrelated to IllegalArgumentExceptions.
> See minimal project showing the problem [here|https://github.com/jlepage-appdirect/cxf-exception-mapper-bug]
> Similar (if not same) problem seems to have been reported via CXF-6635, but I do see this with 3.1.11 and 3.1.12.
> Thx!



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)