Thanks a lot for the fix info, Christian Unfortunately, i am stuck to v2.6.0 (and cannot upgrade) :-(
Therefore, I am trying to implement a simple workaround, and wrote the following (pretty basic) interceptor: /** * This processor augments the default 'UnitOfWork' for a Camel exchange of JMS type, * so that getOriginalMessage() does not clone only the body but also the header * making thereby possible to replay messages from a DeadLetterQueue. */ public class JmsExchangePatcher implements Processor { @Override public void process(Exchange exchange) throws Exception { if ( exchange.getIn().getClass().getSimpleName().equals(JmsMessage.class.getName()) && exchange.getUnitOfWork().getClass().getName().equals(DefaultUnitOfWork.class.getName()) ) { exchange.setUnitOfWork( new CustomUnitOfWork(exchange) ); } } private static final class CustomUnitOfWork extends DefaultUnitOfWork { protected ForemUnitOfWork(Exchange exchange) { super(exchange); getOriginalInMessage().setHeaders( exchange.getIn().getHeaders() ); } } } But apparently it is not sufficient. The Camel headers are now well present in original msg, but seem to be scratched when the exchange is converted to a JMS Message (when put in the DLQ) Can you give me some additional hint about what (else) needs to be done for a complete workaround. Thanks in advance Bernard. NB: Feel free to move this post to the "User" list... -- View this message in context: http://camel.465427.n5.nabble.com/OriginalMsg-Why-is-only-the-body-cloned-for-JMS-messages-tp5675413p5675851.html Sent from the Camel Development mailing list archive at Nabble.com.