java.net.ConnectException: Connection timed out while connecting through a proxy

download, java, proxy, url, urlconnection

Solution

Try this page on how to work with proxies - looks comprehensive.

Problem

I am trying to download a zip file from a URL and store it in the local system using java code. I am also using system proxy for the same. Its unable to connect to the url. Any idea? ``` public static void main() { try { long startTime = System.currentTimeMillis(); System.out.println("Connecting to the url...\n"); System.setProperty("http.proxyHost", " http://abc.com"); System.setProperty("http.proxyPort","1111"); URL url = new URL("http://sourceforge.net/projects/sevenzip/files/7-Zip/9.20/7z920.exe/download?use_mirror=nchc"); url.openConnection(); InputStream reader = url.openStream(); FileOutputStream writer = new FileOutputStream("/home/user/result/apps.zip); byte[] buffer = new byte[153600]; int totalBytesRead = 0; int bytesRead = 0; System.out.println("Reading ZIP file 150KB blocks at a time.\n"); while ((bytesRead = reader.read(buffer)) > 0) { writer.write(buffer, 0, bytesRead); buffer = new byte[153600]; totalBytesRead += bytesRead; } long endTime = System.currentTimeMillis(); System.out.println("Done downloading. " + (new Integer(totalBytesRead).toString()) + " bytes read (" + (new Long(endTime - startTime).toString()) + " millseconds).\n"); writer.close(); reader.close(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } unZip(INPUT_ZIP_FILE); } ``` i get the following error: ``` java.net.ConnectException: Connection timed out at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:529) at java.net.Socket.connect(Socket.java:478) at sun.net.NetworkClient.doConnect(NetworkClient.java:163) at sun.net.www.http.HttpClient.openServer(HttpClient.java:394) at sun.net.www.http.HttpClient.openServer(HttpClient.java:529) at sun.net.www.http.HttpClient.<init>(HttpClient.java:233) at sun.net.www.http.HttpClient.New(HttpClient.java:306) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:977) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:925) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:836) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1172) at java.net.URL.openStream(URL.java:1010) at test.main(test.java:33) ``` It says unknown host when i try to ping the url, but i am able to ping urls like www.google.com

Original source