Процесс отправки сообщений на сервер кажется правильным, но сервер не показывает полученные данные.Как я могу заставить его работать правильно?
Сторона клиента:
void manageClient(){
try(DatagramChannel datagramChannel = DatagramChannel.open();
Scanner input = new Scanner(System.in)){
datagramChannel.connect(socketAddress);
while (true){
ByteBuffer buf = ByteBuffer.allocate(512);
String r = input.nextLine();
buf.put(r.getBytes());
datagramChannel.send(buf, socketAddress);
messageToSend = null;
buf.clear();
}
}
catch (IOException e){
e.printStackTrace();
System.out.println("Cannot connect to the server!");
}
}
Сторона сервера:
byte[] message = new byte[512];
DatagramPacket datagramPacket = new DatagramPacket(message, message.length);
void manageServer(){
System.out.println("Waiting for the messages.");
try(DatagramSocket datagramSocket = new DatagramSocket(7755)){
try {
while(true){
datagramSocket.receive(datagramPacket);
byte[] tobeString = datagramPacket.getData();
String q = new String(tobeString, 0, tobeString.length);
System.out.println("Server got: " + q);
}
} catch (IOException e) {
e.printStackTrace();
System.out.println("An error with input.");
}
}
catch(SocketException e){
System.out.println("A problem with connection occurred!");
}
}
После нажатия кнопки «Ввод» сервер не показывает сообщениеон получил.