Files
spring-integration-samples/basic/web-sockets
Artem Bilan 5f524dc534 Upgrade to SI-5.0 & SIK-3.0, Reactor 3.0
* Fix compatibility after Java DSL migration to the SI Core
* Also upgrade all the JMS sample to the JMS 2.0
* Fix default `connectionFactory` bean reference to the current `jmsConnectionFactory`
* Remove unsupported JPA-1.0 Spec via `OpenJpaAutoConfiguration`, since the minimum now is JPA-2.0
* Remove non-lambda sample since minimum now is Java 8
* Rename `PromiseTest` to `MonoTest` and fix it to Reactor 3.0
* Fix `stomp-server.xml` to use proper Reactor 3.0 `eactor.util.function.Tuples` for SpEL
* Regenerate POMs
2016-11-18 14:11:32 -05:00
..
2016-06-06 21:12:55 -04:00

WebSockets Sample

This example demonstrates the Standard WebSocket protocol (without any sub-protocols) with Spring Integration Adapters. It just sends current time from the server to all connected clients.

Server

The server is presented only with a single org.springframework.integration.samples.websocket.standard.server.Application class, which is based on the Spring Boot AutoConfiguration and Spring Integration Java & Annotation configuration. It is a main and starts an embedded Tomcat server on the default 8080 port. The WebSocket endpoint is mapped to the /time path.

The server also can be run from Gradle gradlew :web-sockets:run

Java Client

The org.springframework.integration.samples.websocket.standard.client.Application is a simple Java application, which starts an integration flow (client-context.xml), connects to the WebSocket server and prints Messages to the logs, which are received over WebSocket.

Browser Client

The index.html in the src/main/resources/static directory of this project demonstrates a JavaScript SockJS client, which connects to our server and just prints its messages in the middle of page.

Test Case

The org.springframework.integration.samples.websocket.standard.ApplicationTests demonstrates the Spring Boot test framework and starts Server & Client to check, that the client receives correct data.