You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Andrey Paramonov (JIRA)" <ji...@apache.org> on 2018/08/25 16:14:00 UTC

[jira] [Comment Edited] (AMQ-6192) Stomp frame translator not working when a content length is set

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

Andrey Paramonov edited comment on AMQ-6192 at 8/25/18 4:13 PM:
----------------------------------------------------------------

It is proposed to support transformation of all in-going messages with 'transformation' header, even send with 'content-length' header set. Out-going messages may continue to be sent with 'content-length' header not set, if there are considerations for compatibility.



was (Author: aparamon):
It is proposed to support transformation of all in-going messages with *transformation* header, even send with *content-length* header set. Out-going messages may continue to be sent with content-length header not set, if there are considerations for compatibility.


> 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
>            Priority: Major
>
> 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
(v7.6.3#76005)