package org.openslx.taskmanager.tasks; import java.io.IOException; import java.security.cert.X509Certificate; import javax.net.SocketFactory; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLSocketFactory; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; import javax.net.ssl.SSLSocket; import org.openslx.taskmanager.tasks.DispatchRelay; public class DispatchSSLRelay extends DispatchRelay { @Override protected SSLSocket[] createSockets ( SocketFactory sf ) throws IOException { return ( SSLSocket[] ) super.createSockets( sf ); } @Override protected SSLSocketFactory getSocketFactory () throws Exception { return trustAll().getSocketFactory(); } protected SSLContext trustAll () throws Exception { TrustManager[] trustAllMan = new TrustManager[] { new X509TrustManager() { public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } public void checkClientTrusted( X509Certificate[] certs, String authType ) {} public void checkServerTrusted( X509Certificate[] certs, String authType ) {} } }; SSLContext ctx = SSLContext.getInstance( "SSL" ); ctx.init( null, trustAllMan, new java.security.SecureRandom() ); return ctx; } }