You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Antoine Reilles (JIRA)" <ji...@apache.org> on 2013/04/16 22:51:16 UTC

[jira] [Updated] (CXF-4969) ExceptionMapper not used for exception in resource setter

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

Antoine Reilles updated CXF-4969:
---------------------------------

    Attachment: testexceptions.war

Test war
                
> ExceptionMapper not used for exception in resource setter
> ---------------------------------------------------------
>
>                 Key: CXF-4969
>                 URL: https://issues.apache.org/jira/browse/CXF-4969
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 2.6.7
>         Environment: tomee-1.6.0-SNAPSHOT
>            Reporter: Antoine Reilles
>         Attachments: testexceptions-src.zip, testexceptions.war
>
>
> I'm trying to use the cxf extension that allows to map exceptions to reponses. The issue I have is that exceptions raised in setXX methods annontated with @PathParam for example are caught and produce an internal server error. This prevents from performing usefull parameter validation from the setter methods, where they could benefit to all services.
> Attached in a sample application that defines a custom mapper, and raises exceptions either in a setter or a service method.
> Once deployed, I do get for:
> http://localhost/testexceptions/a/b/fail_in_inject
> where the exception is raised at the setter level an HTTP 500 response, with entity
> <ns1:XMLFault 
>     xmlns:ns1="http://cxf.apache.org/bindings/xformat">
>     <ns1:faultstring 
>         xmlns:ns1="http://cxf.apache.org/bindings/xformat">javax.ws.rs.WebApplicationException
>     </ns1:faultstring>
> </ns1:XMLFault>
> and a stack in the server logs, when
> http://localhost/testexceptions/a/b/fail_in_serve
> where the exception is raised at service level correctly returns HTTP 400
> One sould be able to use the setter methods (or the resource constructor) to perform parameters validation, and property return errors.
> Tested with tomee 1.6.0, which ships with cxf-2.6.7

--
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