use Jetty SslContextFactory to enable wss:// connection to Igtimi Websocket server

Change-Id: Id6045e7370ae5750d1e7b85c6806f9e2676651fa
This commit is contained in:
Axel Uhl committed 2015-12-21 10:11:50 +01:00
1 parent 6aa2d769ec
commit b9ecb366e5
2 files changed
+6 -6

No files matched your search

@@ -21,15 +21,16 @@ Import-Package: javax.ws.rs;version="1.1.1",
javax.ws.rs.core;version="1.1.1",
javax.ws.rs.ext;version="1.1.1",
org.apache.commons.lang,
org.codehaus.jackson.jaxrs;version="1.9.13",
org.eclipse.jetty.io;version="9.0.0",
org.eclipse.jetty.util.component;version="9.0.4",
org.eclipse.jetty.util.ssl,
org.eclipse.jetty.websocket.api;version="9.0.0",
org.eclipse.jetty.websocket.api.annotations;version="9.0.0",
org.eclipse.jetty.websocket.api.extensions;version="9.0.0",
org.eclipse.jetty.websocket.client;version="9.0.0",
org.eclipse.jetty.websocket.common;version="9.0.0",
org.osgi.framework;version="1.7.0",
org.codehaus.jackson.jaxrs;version="1.9.13"
org.osgi.framework;version="1.7.0"
Web-ContextPath: /igtimi
Bundle-Activator: com.sap.sailing.domain.igtimiadapter.impl.Activator
Export-Package: com.sap.sailing.domain.igtimiadapter,
@@ -10,6 +10,7 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.eclipse.jetty.util.ssl.SslContextFactory;
import org.eclipse.jetty.websocket.api.Session;
import org.eclipse.jetty.websocket.api.WebSocketAdapter;
import org.eclipse.jetty.websocket.client.ClientUpgradeRequest;
@@ -60,7 +61,7 @@ public class WebSocketConnectionManager extends WebSocketAdapter implements Live
this.fixFactory = new FixFactory();
this.connectionFactory = connectionFactory;
this.listeners = new ConcurrentHashMap<>();
client = new WebSocketClient();
client = new WebSocketClient(new SslContextFactory());
configurationMessage = connectionFactory.getWebSocketConfigurationMessage(account, deviceSerialNumbers);
request = new ClientUpgradeRequest();
reconnect();
@@ -227,9 +228,7 @@ public class WebSocketConnectionManager extends WebSocketAdapter implements Live
IOException lastException = null;
for (URI uri : connectionFactory.getWebsocketServers()) {
try {
if (uri.getScheme().equals("ws")) {
// as Jetty 9.0.4 currently doesn't seem to support wss, explicitly
// look for ws connectivity
if (uri.getScheme().equals("ws") || uri.getScheme().equals("wss")) {
logger.log(Level.INFO, "Trying to connect to " + uri + " for " + this);
client.start();
client.connect(this, uri, request);