When exchanges is processed from pipeline they result is copyed as input to the next exchange. However during this copy Camel could potentially change the MEP to InOut. It should respect the original MEP.
The flaw is in ExchangeHelper#copyResults
Fixing this also forces end users to use the correct send/request method on ProducerTemplate. Now Camel will keep the MEP.
So if you are using send then its inOnly and then you the there is no result. Use request for InOut MEP's.
This breaks a few of our own unit testing that was using the wrong method.