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

Stomp Websocket - Multiple Frames is not working

Agile BoardAttach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

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

      Description

      When you send a message through Stomp Websocket using stomp.js, if you try to send a message bigger than 16kb, stomp.js splits the message in multiple frames. ActiveMQ is not able to manage this kind of message.

      The showed error is:
      org.apache.activemq.transport.stomp.ProtocolException: The maximum command length was exceeded
      at org.apache.activemq.transport.stomp.StompWireFormat.readHeaderLine(StompWireFormat.java:158)
      at org.apache.activemq.transport.stomp.StompWireFormat.readLine(StompWireFormat.java:148)
      at org.apache.activemq.transport.stomp.StompWireFormat.parseAction(StompWireFormat.java:181)
      at org.apache.activemq.transport.stomp.StompWireFormat.unmarshal(StompWireFormat.java:98)
      at org.apache.activemq.transport.stomp.StompWireFormat.unmarshal(StompWireFormat.java:62)
      at org.apache.activemq.transport.ws.StompSocket.onMessage(StompSocket.java:76)
      at org.eclipse.jetty.websocket.WebSocketConnectionRFC6455$WSFrameHandler.onFrame(WebSocketConnectionRFC6455.java:835)
      at org.eclipse.jetty.websocket.WebSocketParserRFC6455.parseNext(WebSocketParserRFC6455.java:349)
      at org.eclipse.jetty.websocket.WebSocketConnectionRFC6455.handle(WebSocketConnectionRFC6455.java:225)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
      at java.lang.Thread.run(Thread.java:744)

      The second framed is processed as a new message, so it is trying to process the body as a command part.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              fbenito Francisco Javier Benito Gómez

              Dates

              • Created:
                Updated:

                Issue deployment