activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lionel Cons (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ARTEMIS-234) STOMP text message frames must not have a content-length header
Date Wed, 13 Jul 2016 06:32:20 GMT

    [ https://issues.apache.org/jira/browse/ARTEMIS-234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15374449#comment-15374449
] 

Lionel Cons commented on ARTEMIS-234:
-------------------------------------

To be closer to the STOMP 1.2 specification ("If a frame body is present, the SEND, MESSAGE
and ERROR frames SHOULD include a content-length header to ease frame parsing"), I would recommend
to use the {{content-type}} header and not the {{content-length}} to distinguish text and
binary messages.

See https://stomp.github.io/stomp-specification-1.2.html#Header_content-length and https://stomp.github.io/stomp-specification-1.2.html#Header_content-type.

> STOMP text message frames must not have a content-length header
> ---------------------------------------------------------------
>
>                 Key: ARTEMIS-234
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-234
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Stomp
>    Affects Versions: 1.1.0
>         Environment: Windows 8, Java 8
>            Reporter: Michael Justin
>
> In Artemis 1.0.0, distinction between text and binary message was possible based on the
content-length header as documented: "A Stomp client can check the presence of the content-length
header to determine the type of the message body (String or bytes)."
> With Artemis 1.1.0 the MESSAGE frame always includes the content-length header, so that
the distiction is not possible:
> SEND
> destination:jms.queue.ExampleQueue
> Test message
> received:
> MESSAGE
> subscription:{B806BF9D-B761-419C-8645-BBE3AED5CAF8}
> message-id:2147488964
> destination:jms.queue.ExampleQueue
> expires:0
> redelivered:false
> priority:4
> timestamp:1443278118819
> content-length:12
> Test message
> Additional information: the documented behaviour is also implemented in Apache ActiveMQ:

> "Stomp is a very simple protocol - that's part of the beauty of it! As such, it does
not have knowledge of JMS messages such as TextMessages or BytesMessages. The protocol does
however support a content-length header. To provide more robust interaction between Stomp
and JMS clients, ActiveMQ keys off of the inclusion of this header to determine what message
type to create when sending from Stomp to JMS."
> Fixing this issue would increase the compatibility of Artemis with ActiveMQ



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message