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

Guy Allard commented on AMQ-6192:
---------------------------------

Gentlemen - please be careful with any plans to change 'content-length' logic 
for STOMP.

A number of Stomp client libraries have differing behavior depending on:

- 'content-length' is present (and a valid key is also present)
- 'content-length' is not present

And also different behavior for outbound frames.

I know of two such libraries, and suspect there are others.

Regards, Guy

> Stomp frame translator not working when a content length is set
> ---------------------------------------------------------------
>
>                 Key: AMQ-6192
>                 URL: https://issues.apache.org/jira/browse/AMQ-6192
>             Project: ActiveMQ
>          Issue Type: New Feature
>          Components: stomp
>    Affects Versions: 5.13.1
>            Reporter: Nigel Sim
>
> The stomp frame translator, such as "transformation:jms-map-json" is ignored 
> if the content-length header is set, so you end up with an 
> ActiveMQByesMessage instead of a ActiveMQMapMessage. The spec says this 
> header is optional, but recommended, so I'm not sure why it's presence or 
> absence is used to determine whether to try the frame translators.
> The code in question is in 
> org.apache.activemq.transport.stomp.JmsFrameTranslator.convertFrame which 
> says:
> {code}
> if (headers.containsKey(Headers.CONTENT_LENGTH) || 
> transformation.equals(Transformations.JMS_BYTE.toString())) {
>   msg = super.convertFrame(converter, command);
> } else {
>  // apply frame translator
> }
> {code}



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

Reply via email to