Spring boot offers the capability to develop interactive web apps using websockets communication with a browser based client (JavaScript UI). The stomp protocol is used on websockets and then mapped to activemq queues or topics, allowing server side components to interact with a web client through the queues or topics and not through websockets. See spring boot page: https://spring.io/guides/gs/messaging-stomp-websocket/ for details. Normal JMS queues/topics on the server side are mapped to ‘N’ number of user specific websocket endpoints (see http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html#websocket-stomp-message-flow
).

Camel seems to have all the necessary components to achieve the same thing:
•    AHC-WS – Camel websocket client
•    Atmosphere-websocket - websocket server
•    Websocket - websocket client/server
•    Stomp -  talks stomp to activemq broker
but has nothing prebuilt and that handles the mappings between user stomp/websocket sessions and individual server side topics and queues. We are running in an OSGI container and need to duplicate the spring boot websocket (i.e. org.springframework.web.socket.messaging.*) capability but without spring due to the difficulties of supporting Spring Boot in OSGI. Can anyone suggest an existing example project or strategy to achieve this goal? This is a migration of an existing project and we must continue to support stomp on the websocket side.


Reply via email to