cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Freeman Fang (JIRA)" <>
Subject [jira] [Commented] (CXF-4940) CXF not (always) responding with the correct exception when working with an exception hierarchy
Date Sun, 07 Apr 2013 12:33:15 GMT


Freeman Fang commented on CXF-4940:


Yeah, nice point, and your patch can always find the most close exception from the inherit
tree, I will apply it soon.

> CXF not (always) responding with the correct exception when working with an exception
> -----------------------------------------------------------------------------------------------
>                 Key: CXF-4940
>                 URL:
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.7.4
>            Reporter: David G
>            Assignee: Freeman Fang
>            Priority: Minor
>         Attachments: FaultOutInterceptor.patch
> Hi there,
> For a webservice I'm currently building (java first), I have a few custom exceptions
arranged in a hierarchy. In order to have them properly declared in the WSDL, I list all possible
exceptions in the WebMethod declarations, not only the top ones. That is, if exceptions B->A,
I declare :
> @WebMethod
> String helloWorld() throws A,B;
> And it works, as far as the WSDL is concerned.
> What doesn't work is that when requesting the service and raising a 'B' (child) exception,
the response embeds an 'A' (parent) fault.
> I seem to have narrowed down the culprit to org.apache.cxf.interceptor.FaultOutInterceptor.getFaultForClass(BindingOperationInfo,Class<?>),
which stops at the first exception 'assignable to' the one actually raised. I 'patched' it
locally to return the 'closest to the one raised', and it does the trick for me.
> I hope an actual CXF contributor can take a look at this issue. I'm a beginner with CXF,
and I might use it improperly. Please bear with me if that's the case :)

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:

View raw message