...
AMQP type | java type | Target mime-type | Comment |
---|---|---|---|
string | String | text/plain | |
list of primitive types (double,float,string,byte[],boolean,byte,short,int,long, char) | java.util.List | jms/stream-message | |
map with primitive value types (double,float,string,byte[],boolean,byte,short,int,long, char) | java.util.Map | jms/map-message | Should null be included into the allowed types? |
list | java.util.List | amqp/list | |
map | java.util.Map | amqp/map | |
binary | java.lang.Serializable | application/java-object-stream | |
binary | byte[] | application/octet-stream |
AMQP 1.0 | AMQP 0-8 | |||||
---|---|---|---|---|---|---|
content-type | x-opt-jms-msg-type | body type | content-type | body | Comments | Implemented |
- | - | - | application/octet-stream | - | ||
- | - | data | application/octet-stream | content of data value | ||
* | 3 | data | application/octet-stream | - | ||
* | 3 | - | application/octet-stream | - | ||
application/x-java-serialized-object | - | data | application/java-object-stream | content of data value | ||
application/x-java-serialized-object | - | - | application/java-object-stream | - | ||
* | 1 | data | application/java-object-stream | content of data value | ||
* | 1 | - | application/java-object-stream | - | ||
- | - | amqp-sequence (if simple type is used ) | jms/stream-message | list with amqp-sequence values | ||
- | 4 | amqp-sequence (if simple type is used) | jms/stream-message | list with amqp-sequence values | ||
- | 4 | - | jms/stream-message | empty list | ||
- | -/4 | amqp-sequence (if non simple type is use) | throw MessageConversionException | |||
- | - | amqp-value with value of map with string keys (of length <255) and simple type values (string, boolean, long, integer, short, byte, float, double, byte[]) | amqp/map | 0-10 encoded map | ||
- | amqp-value with value of map with either non string keys or non simple values, or string key with length > 255 | throw MessageConversionException | ||||
- | 2 | - | amqp/map | empty 0-10 encoded map | ||
2 | amqp-value with value of map with either non string keys or non simple values, or string key with length > 255 | throw MessageConversionException | ||||
- | 5 | - | text/plain | - | ||
text/plain | - | - | text/plain | - | ||
- | - | amqp vallue with string or null | text/plain | string value | ||
* | 5 | amqp vallue with string or null | text/plain | string value | ||
text/* | - | data | text/* | data bytes as string | ||
application/xml | - | data | application/xml | data bytes as string | ||
application/*+xml | - | data | application/*+xml | data bytes as string | ||
application/xml-dtd | - | data | application/xml-dtd | data bytes as string | ||
application/json | - | data | application/json | data bytes as string | ||
application/*+json | - | data | application/*+json | data bytes as string | ||
application/javascript | - | data | application/javascript | data bytes as string | ||
application/ecmascript | - | data | application/ecmascript | data bytes as string | ||
* | * | * | throw MessageConversionException |
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
...