Files
spring-integration-samples/basic/web-sockets
Chris Dickinson 7dec6980eb Add URL for index.html page for WebSocket sample
Turns out the CORS is always enabled for WebSocket with SockJS.
So, since we cannot predict an URL for the `index.html` therefore we always recommend open it on the same host port as server application - `http://localhost:8080`
2022-12-20 11:54:20 -05: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. It can be reached at http://localhost:8080/index.html.

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.