From fbc52ec12e03ac0ff952d7c82e390326dd51240d Mon Sep 17 00:00:00 2001 From: Ignacio Molina Cuquerella Date: Wed, 21 Jun 2017 18:23:34 +0200 Subject: [PATCH] Add true WSS support to WebSocketClient --- .../org/java_websocket/client/WebSocketClient.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/java_websocket/client/WebSocketClient.java b/src/main/java/org/java_websocket/client/WebSocketClient.java index 9f2d93190..59f1b5c0e 100644 --- a/src/main/java/org/java_websocket/client/WebSocketClient.java +++ b/src/main/java/org/java_websocket/client/WebSocketClient.java @@ -39,6 +39,9 @@ import java.util.Map; import java.util.concurrent.CountDownLatch; +import javax.net.ssl.SSLContext; +import javax.net.ssl.SSLSocketFactory; + import org.java_websocket.AbstractWebSocket; import org.java_websocket.WebSocket; import org.java_websocket.WebSocketImpl; @@ -226,7 +229,14 @@ public void sendPing() throws NotYetConnectedException { public void run() { try { if( socket == null ) { - socket = new Socket( proxy ); + if (this.uri.getScheme().equals("wss")) { + SSLContext sslContext = SSLContext.getInstance("TLS"); + sslContext.init(null, null, null); + SSLSocketFactory factory = sslContext.getSocketFactory(); + socket = factory.createSocket(); + } else { + socket = new Socket( proxy ); + } } else if( socket.isClosed() ) { throw new IOException(); }