diff --git a/spring-webflux/src/main/java/org/springframework/web/reactive/socket/client/TomcatWebSocketClient.java b/spring-webflux/src/main/java/org/springframework/web/reactive/socket/client/TomcatWebSocketClient.java index 235d8d462ea..cd469763249 100644 --- a/spring-webflux/src/main/java/org/springframework/web/reactive/socket/client/TomcatWebSocketClient.java +++ b/spring-webflux/src/main/java/org/springframework/web/reactive/socket/client/TomcatWebSocketClient.java @@ -17,6 +17,7 @@ package org.springframework.web.reactive.socket.client; import javax.websocket.Session; +import javax.websocket.WebSocketContainer; import org.springframework.web.reactive.socket.HandshakeInfo; import org.springframework.web.reactive.socket.adapter.StandardWebSocketSession; @@ -33,6 +34,14 @@ import reactor.core.publisher.MonoProcessor; public class TomcatWebSocketClient extends StandardWebSocketClient { + public TomcatWebSocketClient() { + } + + public TomcatWebSocketClient(WebSocketContainer webSocketContainer) { + super(webSocketContainer); + } + + @Override protected StandardWebSocketSession createWebSocketSession(Session session, HandshakeInfo info, MonoProcessor completion) { diff --git a/spring-webflux/src/test/java/org/springframework/web/reactive/socket/AbstractWebSocketIntegrationTests.java b/spring-webflux/src/test/java/org/springframework/web/reactive/socket/AbstractWebSocketIntegrationTests.java index 049a269ff97..410111754dc 100644 --- a/spring-webflux/src/test/java/org/springframework/web/reactive/socket/AbstractWebSocketIntegrationTests.java +++ b/spring-webflux/src/test/java/org/springframework/web/reactive/socket/AbstractWebSocketIntegrationTests.java @@ -21,6 +21,8 @@ import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; +import org.apache.tomcat.websocket.WsContainerProvider; +import org.apache.tomcat.websocket.WsWebSocketContainer; import org.apache.tomcat.websocket.server.WsContextListener; import org.junit.After; import org.junit.Before; @@ -93,7 +95,7 @@ public abstract class AbstractWebSocketIntegrationTests { public static Object[][] arguments() throws IOException { Flux clients = Flux.concat( - Flux.just(new TomcatWebSocketClient()).repeat(5), + Flux.just(new TomcatWebSocketClient(new WsWebSocketContainer())).repeat(5), Flux.just(new JettyWebSocketClient()).repeat(5), Flux.just(new ReactorNettyWebSocketClient()).repeat(5), Flux.just(new RxNettyWebSocketClient()).repeat(5),