2015-10-06 3 views
-1

Я пытаюсь загрузить файл с URL-адреса и сохранить его локально в java. Этот URL-адрес работает из моего браузера, но в JAVA, я получил эти exeception: java.net.SocketException: Сброс соединения.java.net.SocketException: Сброс соединения с SocketInputStream

java.net.SocketException: Connection reset 
    at java.net.SocketInputStream.read(SocketInputStream.java:196) 
    at java.net.SocketInputStream.read(SocketInputStream.java:122) 
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235) 
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:275) 
    at java.io.BufferedInputStream.read(BufferedInputStream.java:334) 
    at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687) 
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633) 
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:658) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1323) 
    at java.net.URL.openStream(URL.java:1037) 

Я попытался с различными реализациями:

Apache Common IO:

Files.copy(myUrl.openStream(), file, StandardCopyOption.REPLACE_EXISTING); 

Джерси 2:

WebTarget target =ClientBuilder.newClient().target(myUri); 
Response response = target.path(ressourcePath).request().get(); 

Java И.О.:

URL link = new URL(myUri); 
InputStream in = new BufferedInputStream(link.openStream()); 

Все эти примеры бросить java.net.SocketException: сброс Исключение соединения.

У меня нет контроля на сервере, который отправляет файл.

+0

У вас есть аккаунт, который вы используете? – Reinard

+1

Возможно ли, что ваш браузер подключается через прокси? –

+0

Возможный дубликат [java.net.SocketException: сброс соединения] (http://stackoverflow.com/questions/62929/java-net-socketexception-connection-reset) – Raedwald

ответ

0
import java.net.*; 
import java.io.*; 

public class URLReader { 
    public static void main(String[] args) throws Exception { 
    URL oracle = new URL("http://www.oracle.com/"); 
    BufferedReader in = new BufferedReader(new InputStreamReader(oracle.openStream())); 
    String inputLine; 
    while ((inputLine = in.readLine()) != null) 
     System.out.println(inputLine); 
    in.close(); 
    } 
} 
Смежные вопросы