You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Freeman Fang (JIRA)" <ji...@apache.org> on 2019/05/27 19:07:00 UTC

[jira] [Resolved] (CAMEL-13376) camel-cxf - failure processor for custom exception handling cannot get the original message

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

Freeman Fang resolved CAMEL-13376.
----------------------------------
       Resolution: Fixed
    Fix Version/s: 2.25.0
                   2.24.1
                   2.22.5
                   2.23.3
                   3.0.0

> camel-cxf - failure processor for custom exception handling cannot get the original message
> -------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-13376
>                 URL: https://issues.apache.org/jira/browse/CAMEL-13376
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-cxf
>    Affects Versions: 2.21.0
>         Environment: Redhat Fuse 7.0 (on EAP)
> reproduced with current "camel-example-cxf-proxy" example
>            Reporter: Jochen Riedlinger
>            Assignee: Freeman Fang
>            Priority: Minor
>             Fix For: 3.0.0, 2.23.3, 2.22.5, 2.24.1, 2.25.0
>
>
> I configured custom exception handling for a CXF consumer where I want to use my own processor.
>  
>  Lile this:
>  
>  onException(Exception.class)
>             .handled(false)
>             .useOriginalMessage()
>             .process(failureResponseProcessor);
>  
>  or:
>  
>  <onException useOriginalMessage="true">
>     <exception>java.lang.Exception</exception>
>     <handled><constant>false</constant></handled>
>     <process ref="failureResponseProcessor"/>
> </onException>
> If allowStreaming is enabled on the CXF consumer endpoint, my FailureResponseProcessor cannot get the original body (the body part of CachedCxfPayload seems to be empty).
> If I set allowStreaming to false, the processor works as expected.
> I did a branch on my fork to create this reproducer:
> https://github.com/jochenr/camel/tree/Reproducer-CXF-CustomExceptionHandling-in-StreamingMode/examples/camel-example-cxf-proxy
> If you toggle the setting of allowStreaming between true and false, you see the different output to the console, right after the string
> "This was the original BODY that caused the fault:"



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)