java.net.SocketException: программное обеспечение вызвало прерывание соединения: соединение

Я пытаюсь программно (Java) открыть URL, который указывает на модем в сети. Я подключен к сети и могу пропинговать устройство, а также получить URL-адрес в браузере. Тем не менее, программно, я получаю следующую трассировку стека при попытке открыть соединение.

java.net.SocketException: Software caused connection abort: 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.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:550)
at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:141)
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.protocol.https.HttpsClient.<init>(HttpsClient.java:272)
at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:329)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:172)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:793)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:158)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1041)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:234)

Кроме того, URL использует протокол https.

Вот мой код:

try {
        URL jipmURL = new URL("https://xxx.xxx.xxx.xxx/login.cgi");
        URLConnection urlConnection = jipmURL.openConnection();
        InputStreamReader streamReader = new InputStreamReader(
                                    jipmURLConnection.getInputStream());
        BufferedReader in = new BufferedReader(streamReader);

        StringBuffer stringBuffer = new StringBuffer();
        String inputLine;
        while ((inputLine = in.readLine()) != null) {
            stringBuffer.append(inputLine);
        }
        System.out.println("Results: " + stringBuffer);
        in.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

Любая помощь будет оценена,

Стив

1 ответ

Решение

Сообщение об исключении указывает, что вы даже не можете установить TCP-соединение с веб-сервером. Трудно догадаться, в чем именно заключается проблема, поскольку вы можете открыть страницу из браузера, но может ли это быть просто из-за того, что вы используете программный брандмауэр, который не разрешает процессу Java подключаться к этому адресу?

Другие вопросы по тегам