Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

-- 
AMQP 1.0 MessageAMQP 0-8 Message
body sectionbody data typeannotation x-opt-jms-msg-typecontent-typecontent typecomments
amqp-value



nullanyanytext/plain 
 stringanyanytext/plain 
 mapanyanyjms/map-message or amqp/map (0-10)if keys' length<255 and values of simple types (string, boolean, double, float, binary(byte[]), null, byte, short, integer, long ), the  "jms/map-message " format is used. If keys' length<255 but non simple type value is used, than "amqp/map" format is used. Otherwise, MessageConversionException is thrown 
listanyanyjms/stream-message
or amqp/list
if list items of simple types(string, boolean, double, float, byte[] (Binary), null, byte, short, integer, long ), otherwise conversion to "amqp/list" is attempted, otherwise MessageConversionException is thrown
 otheranyany MessageConversionException is thrown
amqp-sequencesee commentsanyany

jms/stream-message
or amqp/list

if amqp-sequence section values of simple types(string, boolean, double, float, byte[] (Binary), null, byte, short, integer, long ), otherwise conversion to "amqp/list" is attempted, otherwise MessageConversionException is thrown
data






binary (bytes[])






0 (Message)anytextapplication/plainwithout a bodyoctet-stream 
 1 (ObjectMessage)anyapplication/java-object-stream   
2 (MapMessage)any

jms/map-message or amqp/map or application/octet-stream

 

  

The content types jms/map-message and amqp/map are preserved. Otherwise, application/octet-stream

3 (BytesMessage)anyapplication/octet-stream   
4 (StreamMessage)anyjms/stream-message or  amqp/list or application/octet-stream   The content types jms/stream-message or  amqp/list are preserved. Otherwise, application/octet-stream
5 (TextMessage)anytext/plain 
  otherany MessageConversionException
  other or not set

content types listed in section 3.3.7 (Body Sections) of AMQP JMS Mapping specification (WD9)

text/plain 
jms/map-message or amqp/mapjms/map-message or amqp/mapthe content type is preserved on converted message
jms/stream-message or amqp/listjms/stream-message or amqp/listthe content type is preserved on converted message
application/x-java-serialized-object or application/java-object-streamapplication/java-object-stream 
other or not set  -otherapplication/octet-stream 
no body







N/A







0 (Message)anytext/plain empty body
  1 (ObjectMessage)anyapplication/java-object-stream body will contain serialized null
  2 (MapMessage)anyjms/map-message   body will contain a serialized empty map
3 (BytesMessage)anyapplication/octet-stream   empty body
4 (StreamMessage)anyjms/stream-message   empty body
5 (TextMessage)anytext/plain 
  otherany MessageConversionException
empty body
other or not set  content types listed in section 3.3.7 (Body Sections) of AMQP JMS Mapping specification (WD9)text/plain   --application/octet-streamempty body
jms/map-message or amqp/mapjms/map-messagebody will contain a serialized empty map
jms/stream-message or amqp/listjms/stream-messageempty body
application/x-java-serialized-object or application/java-object-streamapplication/java-object-streambody will contain serialized null
othertext/plain

empty body

 

 

 

At the moment the conversion into AMQP 1-0 might end-up in unexpected message types, for example, stream message can be received as object message and map message can be received as object message. It seems the same applies to conversion from AMQP 1-0 into AMQP 0-x

...