MapMessage
Here, the body is a set of name-value pairs where the names are always strings but the values can be any Java™ primitive type, their wrapper object, or even strings. The values can either be accessed sequentially or randomly by name. The adapter is able to handle data to and from a MapMessage type.