Uploaded image for project: 'ActiveMQ'
  1. ActiveMQ
  2. AMQ-6192

Stomp frame translator not working when a content length is set

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 5.13.1
    • Fix Version/s: None
    • Component/s: STOMP
    • Labels:
      None

      Description

      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:

      if (headers.containsKey(Headers.CONTENT_LENGTH) || transformation.equals(Transformations.JMS_BYTE.toString())) {
        msg = super.convertFrame(converter, command);
      } else {
       // apply frame translator
      }
      

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              nsim Nigel Sim
            • Votes:
              2 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated: