Connection timed out

V

VUNETdotUS

I want to test this code which establishes SSL connection with the
server. Why it throws the exception as below. Also, how to retrieve
the content of the desired page on that host?:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.security.Principal;
import java.security.cert.X509Certificate;

import javax.net.ssl.SSLPeerUnverifiedException;
import javax.net.ssl.SSLSession;
import javax.net.ssl.SSLSocket;
import javax.net.ssl.SSLSocketFactory;

public class MainClass {
public static void main(String[] args) throws Exception {
SSLSocketFactory factory = (SSLSocketFactory)
SSLSocketFactory.getDefault();

String hostName = "website.com";
String fileName = "";

SSLSocket sslsock = (SSLSocket) factory.createSocket(hostName,
443);

SSLSession session = sslsock.getSession();
X509Certificate cert;
try {
cert = (X509Certificate) session.getPeerCertificates()[0];
} catch (SSLPeerUnverifiedException e) {
System.err.println(session.getPeerHost() + " did not present a
valid certificate.");
return;
}

System.out.println(session.getPeerHost() + " has presented a
certificate belonging to:");
Principal p = cert.getSubjectDN();
System.out.println("\t[" + p.getName() + "]");
System.out.println("The certificate bears the valid signature
of:");
System.out.println("\t[" + cert.getIssuerDN().getName() + "]");

System.out.print("Do you trust this certificate (y/n)? ");
System.out.flush();
BufferedReader console = new BufferedReader(new
InputStreamReader(System.in));
if (Character.toLowerCase(console.readLine().charAt(0)) != 'y')
return;

PrintWriter out = new PrintWriter(sslsock.getOutputStream());

out.print("GET " + fileName + " HTTP/1.0\r\n\r\n");
out.flush();

BufferedReader in = new BufferedReader(new
InputStreamReader(sslsock.getInputStream()));
String line;
while ((line = in.readLine()) != null)
System.out.println(line);

sslsock.close();
}
}

Exception in thread "main" java.net.ConnectException: Connection timed
out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.<init>(Unknown Source)
at
com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl.createSocket(Unknown
Source)
at SSL.SSLTest.main(SSLTest.java:20)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top