клиент / сервер, исключение: StreamCorruptedException: неверный заголовок потока: 75720002

1

В следующей программе клиент должен вводить номера и отправлять их на сервер. Серверу приходится вычислять числа, которые отправляются клиенту, и отправлять этот результат клиенту.

Для следующего кода я получаю исключение внутри своего класса сервера:

java.io.StreamCorruptedException: invalid stream header: 75720002
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:804)

И внутри моего класса Client исключение:

Exception in thread "main" java.util.NoSuchElementException: No line found
    at java.util.Scanner.nextLine(Scanner.java:1585)

Как я могу решить эту проблему?

Теги:
network-programming
client-server

1 ответ

3
Лучший ответ

Вы не можете обернуть несколько потоков/писателей вокруг одного и того же основного потока (ваш клиент дважды обматывает выходной поток сокета, и ваш сервер дважды обматывает поток ввода сокета). если вы хотите отправлять объекты, вам нужно просто использовать потоки, основанные на объекте.

  • 0
    Итак, для всех видов связи лучше использовать потоки объектов, чем сканер?
  • 0
    @ Xerath - нет, потоки объектов не лучше (или хуже), чем Scanner, просто разные. выберите тот, который работает для вас, и придерживайтесь его, но вы не можете использовать оба в одном потоке.
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню