camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Components setting data on OUT
Date Fri, 23 Jan 2009 08:05:56 GMT
On Fri, Jan 23, 2009 at 8:33 AM, Willem Jiang <willem.jiang@gmail.com> wrote:
> Hi Claus
>
> I agree the component should take responsible of copy the In message
> headers into Out message headers. we could provides util class to do
> that copy thing in camel-core.
> But the component should also need to make sure some of the out message
> header value which is copied from in message should be overrided
> according components logical.
>
> Such as the response context in camel-cxf component message header, it
> should be overrided when the camel-cxf producer get the response from
> actual web services.
>
> Just my two cents,
>
> Willem
Spot on Willem.

Yeah I think we need to check for components doing exchange.getOut().setBody(
And see if they consider copying headers from IN if needed.

Yeah a nice helper method in Camel core to *not* override headers in
OUT but only copy if not already exists in OUT header


>
> Claus Ibsen wrote:
>> Hi
>>
>> The OUT message really starts to irritate me.
>>
>> We have various components that set data on the OUT body and then the
>> Pipeline will use this result as IN for then next node.
>> What happens is then whatever headers etc from IN is lost. Then you
>> cant really route and have your headers preserve during the entire
>> route.
>>
>> We might wanna give this a thought in Camel 2.0?
>> - Pipeline to always add headers from IN to OUT, so headers is preserved
>> - Components to enforce MEP and only set data on OUT if its InOut
>> - Components to add headers from IN to OUT if it set OUT as result
>> and what not
>>
>> Currently the SQL component has this flaw. In the past it was
>> Velocity. And I guess there are some other components as well.
>>
>> Just starting a thread to not forget. I only had one cup of coffee
>> this morning. Going to boil water now.....
>>
>>
>
>



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/

Mime
View raw message