STOMP over WebSockets

Integrating Web Browsers directly into Enterprise Messaging Middleware

STOMP on the Browser

STOMP stands for Simple (or Streaming) Text Orientated Messaging Protocol. On the protocol level ultimately simple text frames are exchanged between a STOMP server and a STOMP client. All details regarding the various versions of the STOMP protocol you will find here: http://stomp.github.io/. Since STOMP is text based it is simple to port it to multiple transport protocols. WebSocket as a protocol supports text frames and since meanwhile WebSockets are available on all recent browsers it is an appropriate protocol to use STOMP directly from the browser.

For STOMP 1.1 on the Web Browser there is a JavaScript library available: http://jmesnil.net/stomp-websocket/doc/. On the server side Apache ActiveMQ supports WebSockets and so provides a bridge between browser applications as end-points and enterprise messaging middleware architectures.

ActiveMQ configuration

To allow WebSockets as transport protocol to access the message queues and topics of ActiveMQ in the activemq.xml configuration file you simply add the corresponding transport connector:

<transportConnectors>
    :
    <transportConnector name="websocket" uri="ws://0.0.0.0:61614" />
    :
</transportConnectors>

For more details regarding the ActiveMQ configuration for WebSockets please refer to Apache's detailed documentation page at http://activemq.apache.org/websockets.html.

Publications

Learn more about WebSockets in general, get background information and gain deeper insight!

Join jWebSocket

Wether developer, designer or translator – join the jWebSocket team and grow together with our success!

Copyright © 2013 Innotrade GmbH. All rights reserved.