[
https://issues.apache.org/activemq/browse/SM-1238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=41471#action_41471
]
Guillaume Nodet commented on SM-1238:
-------------------------------------
I'm looking at the StreamSource part of the patch and I don't understand why is
this needed.
Transforming the fault contents to a StringSource is only necessary if the
contents are read more than once.
Here is the code:
{code}
MessageUtil.transferToIn(tme.getFault(), me);
sendSync(me);
done(tme);
{code}
The fault contents of tme are moved to the in content of me, so the stream will
be in the me exchange, but it won't be closed until the done(tme) is processed
later.
On the other point, your patch seems very specific and will break compatibility
because all errors would be wrapped in a tag which was not expected. Such
transformation should be done by adding something between the EIP and the HTTP
endpoint imho, as the EIP pipeline should avoid transforming the message at all.
Wrt to properties, the idea is good. However loading and storing back the
message from the store does not seem ideal to me. Could the problem be on
the other component ? I.e. the "transformer" component should convey the needed
properties ?
> EIP Pipeline should propagate message properties across asynchronous exchanges
> ------------------------------------------------------------------------------
>
> Key: SM-1238
> URL: https://issues.apache.org/activemq/browse/SM-1238
> Project: ServiceMix
> Issue Type: New Feature
> Components: servicemix-eip
> Affects Versions: 3.2.1
> Reporter: Ron Gavlin
> Attachments: Pipeline.java.patch
>
>
> EIP Pipeline output properties should be the same as input properties except
> where modified by the transform in asynchronous exchanges.
> Also, StreamSource faults should be localized before returning to the
> exchange.
> I hope to submit a patch for this issue shortly.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.