@Nadia
By default, the MLA will use a SimpleMessageConverter which will convert to a String when there is a content-type starting with 'text'. It also supports 'application/x-java-serialized-object'.
For an unrecognized (or no) content-type, it will extract the byte[] payload, which is what you are seeing.
In the JavaDoc you referenced, notice this comment...
By default, the content of incoming Rabbit messages gets extracted before being passed into the target listener method, to let the target method operate on message content types such as String or byte array instead of the raw Message. Message type conversion is delegated to a Spring AMQ MessageConverter.
By default, a SimpleMessageConverter will be used.
(If you do not want such automatic message conversion taking place, then be sure to set the MessageConverter to null.)
So, to get a raw message, you must set the MLA's messageConverter to null, either by the constructor, or setter.
Gary P. Russell
Spring Integration Team
SpringSource, a division of VMware