2014-01-09 6 views
0

由於某種原因,我從以下代碼收到java.net.ConnectException: Connection timed out。它可以在我的本地計算機上正常工作,並且我可以通過本地和開發服務器上的瀏覽器訪問它,但是在開發服務器上,嘗試閱讀時遇到此錯誤。URLConnection超時錯誤在本地工作正常,但在開發服務器上無效

public List<NodeMap> downloadFile(String fileUrl) { 

    InputStream inputStream = null; 

    try { 

     URL url = new URL(fileUrl); 
     URLConnection con = url.openConnection(); 
     con.setConnectTimeout(60000); 
     con.setReadTimeout(60000); 
     inputStream = con.getInputStream(); 

     CSVReader csvReader = new CSVReader(new InputStreamReader(inputStream),',','"'); 

     return iterateRows(csvReader); 
    } 
    catch (IOException e) { 
     LOG.error("Node mapping file", e); 
    } 
    finally { 
     IOUtils.closeQuietly(inputStream); 
    } 

    return null; 
} 

完整的堆棧

java.net.ConnectException: Connection timed out 
     at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.7.0_21] 
     at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) ~[na:1.7.0_21] 
     at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) ~[na:1.7.0_21] 
     at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) ~[na:1.7.0_21] 
     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) ~[na:1.7.0_21] 
     at java.net.Socket.connect(Socket.java:579) ~[na:1.7.0_21] 
     at sun.net.NetworkClient.doConnect(NetworkClient.java:175) ~[na:1.7.0_21] 
     at sun.net.www.http.HttpClient.openServer(HttpClient.java:378) ~[na:1.7.0_21] 
     at sun.net.www.http.HttpClient.openServer(HttpClient.java:473) ~[na:1.7.0_21] 
     at sun.net.www.http.HttpClient.<init>(HttpClient.java:203) ~[na:1.7.0_21] 
     at sun.net.www.http.HttpClient.New(HttpClient.java:290) ~[na:1.7.0_21] 
     at sun.net.www.http.HttpClient.New(HttpClient.java:306) ~[na:1.7.0_21] 
     at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995) ~[na:1.7.0_21] 
     at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931) ~[na:1.7.0_21] 
     at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849) ~[na:1.7.0_21] 
     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1299) ~[na:1.7.0_21] 
+0

可能是在您的瀏覽器配置的開發服務器還有一個代理配置,這就是爲什麼它從瀏覽器,而不是從程序工作? –

+0

關閉csvReader istead(它也應該關閉inputStream) – isah

+0

我不知道代理配置是什麼意思。 –

回答

0

看起來好像是DNS問題。我使用了URL的內部IP,並且它工作正常!

相關問題