time out error while download file from url using https protocol
843790Dec 30 2006 — edited Jan 2 2007Dear friends
i am trying to download a file from a url which is using https protocol. i am using java 6.i had written a very simple program to do this. the program is running very file, when i am using http protocol. but when i use https protocol it is giving timeout error. i tried everything but the result is same. i am posting the code i am using and the error. plz somebody help me out.
thanks to all
progaram:
import java.io.*;
import java.net.*;
import javax.net.ssl.*;
public class HttpsFileDownload
{
public static void main(String[] args)
{
OutputStream out = null;
InputStream in = null;
try
{
//this is giving timeout error
URL url = new URL("https", "host name/ip address", 443, "file name to download");
HttpsURLConnection conn = (HttpsURLConnection)url.openConnection();
/*
//This is working properly
URL url = new URL("valid url string");
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
*/
conn.setConnectTimeout(5000000);
System.out.println(conn.getConnectTimeout());
conn.setReadTimeout(5000000);
System.out.println(conn.getReadTimeout());
in = conn.getInputStream();
out = new BufferedOutputStream(new FileOutputStream("file name to download"));
byte[] buffer = new byte[1024];
int numRead;
long numWritten = 0;
while ((numRead = in.read(buffer)) != -1)
{
out.write(buffer, 0, numRead);
numWritten += numRead;
}
System.out.println("file downloaded: " + "\t" + numWritten);
}
catch (Exception exception)
{
exception.printStackTrace();
}
finally
{
try
{
if (in != null)
{
in.close();
}
if (out != null)
{
out.close();
}
}
catch (IOException ioe)
{
}
}
}
}
error:
java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.Socket.connect(Socket.java:519)
at sun.net.NetworkClient.doConnect(NetworkClient.java:152)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:500)
at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:271)
at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:328)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewH
ttpClient(AbstractDelegateHttpsURLConnection.java:176)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConne
ction.java:733)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
(AbstractDelegateHttpsURLConnection.java:162)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:981)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Http
sURLConnectionImpl.java:234)
at TestFileDownloadNcodeCRL.main(TestFileDownloadNcodeCRL.java:92)
Message was edited by:
ajkr