Не могу получить данные с сервера

Моя проблема заключается в том, что я не могу понять, почему я не могу получить данные с сервера в этом коде:

 private void btnRefreshRoomActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRefreshRoomActionPerformed
//        // создаем модель для listFileRoom
//        // чтобы иметь возможность добавлять элементы
//        // метод ниже addElement
          listModelRoom = getGui_client_main().getDefaultListModelRoom();
          listFileRoom.setModel(listModelRoom);
//
          try {
            BufferedReader br = new BufferedReader(new InputStreamReader(sock.getInputStream()));
            PrintWriter pw = new PrintWriter(sock.getOutputStream(), true);
            //обновление файлов и количества клиентов в комнате на клиенте
            pw.println("refreshRoomOnClient"); // передаем команду серверу
            countClientInRoomFromServer = br.readLine(); // получаем ответ от сервера
            lblCountClientInRoom.setText("Количество клиентов в комнате: " + countClientInRoomFromServer);
            // передаем комнату, и получаем от сервера все файлы
            // которые заносятся в listFileRoom
            pw.println(txtNameRoom.getText());
            // удаляем все данные, чтобы загрузить новые
            listModelRoom.removeAllElements();
            // содержит количество элементов,
            // для добавления после последнего элемента
            int size_listModelRoom = listModelRoom.size();
            // либо нет файлов, либо получаем файлы
            String msgFromServ;
            // получаем ответ от сервера и обрабатываем
            while (!"exit".equals(msgFromServ = br.readLine())) {
                if ("Файлов не найдено...".equals(msgFromServ)) {
                    txtLogs.append("Файлов на сервере не найдено..." + "\n");
                    break;
                } else if ("error".equals(msgFromServ)) {
                    txtLogs.append("Ошибка чтения комнаты на сервере..." + "\n");
                    break;
                }
                listModelRoom.insertElementAt(msgFromServ, size_listModelRoom);
            }
          } catch (IOException ex) {
            txtLogs.append("Ошибка на клиенте, передача "
                    + "или прием данных от сервера, btnRefreshCountClientInRoomActionPerformed..." + "\n");
        }
    }//GEN-LAST:event_btnRefreshRoomActionPerformed

Проблема в том, что благодаря этому методу, при нажатии кнопки мы должны получать данные с сервера, но я ничего кроме значения null, получить не могу и не знаю, что с этим делать.

Программа должна работать так: https://www.youtube.com/watch?v=xqQuljC2KMs&t=88s

В моём случае, при нажатии на "обновление данных в комнате", кнопка зацикливается и программа зависает

Схема работы Метод работы приложения


Ответы (0 шт):