| package net.sf.taverna.t2.activities.wsdl.security; |
| |
| import java.io.IOException; |
| import java.net.MalformedURLException; |
| import java.net.URL; |
| import java.security.cert.Certificate; |
| |
| import javax.net.ssl.HttpsURLConnection; |
| import javax.net.ssl.SSLHandshakeException; |
| |
| import org.junit.Assert; |
| import org.junit.Ignore; |
| import org.junit.Test; |
| |
| public class HTTPSConnectionsTest { |
| |
| @Test() |
| @Ignore("https://rpc103.cs.man.ac.uk:8443/wsrf/services no available") |
| public void testHTTPSConnections(){ |
| |
| String serviceURL = "https://rpc103.cs.man.ac.uk:8443/wsrf/services"; |
| |
| URL url; |
| try { |
| url = new URL(serviceURL); |
| SSLUtilities.trustAllHttpsCertificates(); |
| HttpsURLConnection httpsConnection = (HttpsURLConnection) url.openConnection(); |
| httpsConnection.connect(); |
| Certificate[] certificates = httpsConnection.getServerCertificates(); |
| Assert.assertFalse(certificates.length == 0); |
| |
| SSLUtilities.stopTrustingAllHttpsCertificates(); |
| HttpsURLConnection httpsConnection2 = (HttpsURLConnection) url.openConnection(); |
| httpsConnection2.connect(); // This should now throw an SSLHandshakeException which is a subclass of IOException |
| |
| } catch (MalformedURLException e) { |
| // TODO Auto-generated catch block |
| e.printStackTrace(); |
| |
| } catch(SSLHandshakeException e){ |
| // This is what we are expecting |
| e.printStackTrace(); |
| } |
| catch (IOException e) { |
| // TODO Auto-generated catch block |
| e.printStackTrace(); |
| } |
| } |
| |
| } |