I checked the code of SpringIntegrationConsumer (I'm not really familiar with Spring Integration), and I think I see the problem:
SpringIntegrationConsumer exclusively create InOnly exchanges for the incoming org.springframework.integration.Message. Because of this, the Camel SMPP component will set the header CamelSmppId on the in message. But the SpringIntegrationConsumer "only" set the out message into the returned org.springframework.integration.Message. That's the reason why you don't see it. Explicitly setting the exchange pattern should solve your issue: <camel:route id="OutboundRoute" > <camel:from uri="outgoingSpringIntegrationChannel"/> <camel:setExchangePattern pattern="InOut"/> <camel:to uri="smpp://pavel@localhost :1234?password=wpsd&registeredDelivery=1&..."/> <camel:bean ref="messageIdProcessor" method="process"/> </camel:route> Feel free to raise a JIRA [1] and propose a solution - maybe including a patch with unit tests [2]. I think the SpringIntegrationConsumer should create InOut or InOnly exchanges depending on the "inOut" instance variable in SpringIntegrationEndpoint. Only my 0,02 €... [1] https://issues.apache.org/jira/browse/CAMEL [2] http://camel.apache.org/contributing.html Best, Christian On Tue, Dec 11, 2012 at 11:41 PM, Johanes Soetanto <otnat...@gmail.com>wrote: > outgoingSpringIntegrationChannel" > --