java.net.ConnectException: Connection refused: connect

118
28 октября 2019, 09:10

При запуске клиент-серверного приложения ЧАТА вылетает ошибка, указанная в заголовке

Первым делом запускаю Сервер, все ОК. Потом запускаю клиент, ввожу свой логин через консоль, а при вводе сообщения вылетает ошибка и ссылается все на InputStream is = http.getInputStream(); Подсказали, что нужно решить этот вопрос через Firewall. Но я понятия не имею, как это сделать Почитал другие ответы, ничего путевого для своей проблемы не нашел.

public class GetThread implements Runnable {
    private final Gson gson;
    private int n;
    public GetThread() {
        gson = new GsonBuilder().create();
    }
    @Override
    public void run() {
        try {
            while ( ! Thread.interrupted()) {
                URL url = new URL(Utils.getURL() + "/get?from=" + n);
                HttpURLConnection http = (HttpURLConnection) url.openConnection();
                InputStream is = http.getInputStream();
                try {
                    byte[] buf = requestBodyToArray(is);
                    String strBuf = new String(buf, StandardCharsets.UTF_8);
                    JsonMessages list = gson.fromJson(strBuf, JsonMessages.class);
                    if (list != null) {
                        for (Message m : list.getList()) {
                            System.out.println(m);
                            n++;
                        }
                    }
                } finally {
                    is.close();
                }
                Thread.sleep(500);
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    private byte[] requestBodyToArray(InputStream is) throws IOException {
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        byte[] buf = new byte[10240];
        int r;
        do {
            r = is.read(buf);
            if (r > 0) bos.write(buf, 0, r);
        } while (r != -1);
        return bos.toByteArray();
    }
}


public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        try {
            System.out.println("Enter your login: ");
            String login = scanner.nextLine();
            Thread th = new Thread(new GetThread());
            th.setDaemon(true);
            th.start();
            System.out.println("Enter your message: ");
            while (true) {
                String text = scanner.nextLine();
                if (text.isEmpty()) break;
                Message m = new Message(login, text);
                int res = m.send(Utils.getURL() + "/add");
                if (res != 200) { // 200 OK
                    System.out.println("HTTP error occured: " + res);
                    return;
                }
            }
        } catch (IOException ex) {
            ex.printStackTrace();
        } finally {
            scanner.close();
        }
    }
}

Полный перечень ошибок :

java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at java.net.Socket.connect(Socket.java:538) at sun.net.NetworkClient.doConnect(NetworkClient.java:180) at sun.net.www.http.HttpClient.openServer(HttpClient.java:463) at sun.net.www.http.HttpClient.openServer(HttpClient.java:558) at sun.net.www.http.HttpClient.(HttpClient.java:242) at sun.net.www.http.HttpClient.New(HttpClient.java:339) at sun.net.www.http.HttpClient.New(HttpClient.java:357) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1220) at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1156) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1050) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:984) at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1564) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at com.company.GetThread.run(GetThread.java:28) at java.lang.Thread.run(Thread.java:748)

READ ALSO
Закругленные края у кнопки

Закругленные края у кнопки

Подскажите пожалуйста как закруглить края у кнопки или какого-либо другого обьекта

132
убрать в дереве svg не создавая новый класс

убрать в дереве svg не создавая новый класс

Имеется класс, мне надо сделать так, чтобы в 1 дереве была показана svg, а в другом она пряталасьКак можно сделать, не создавая новый класс?

131
Как отменить overflow:hidden, для дочернего элемента

Как отменить overflow:hidden, для дочернего элемента

Есть вот такая вёрстка которую нельзя ломать

156
Задержка показа блока

Задержка показа блока

Хочу сделать элемент задержки показа блока на 5 секундТоесть загрузили страницу и через 5 секунд появился блок с линками и т

128