packageclienteServer;importjava.io.*;importjava.net.*;importjava.util.Scanner;publicclassTCPServer{publicstaticvoidmain(String[]args)throwsException{StringclientSentence;StringcapitalizedSentence;ServerSocketwelcomeSocket=newServerSocket(6789);SocketconnectionSocket=welcomeSocket.accept();while(true){BufferedReaderinFromClient=newBufferedReader(newInputStreamReader(connectionSocket.getInputStream()));DataOutputStreamoutToClient=newDataOutputStream(connectionSocket.getOutputStream());clientSentence=inFromClient.readLine();System.out.println("Received: "+clientSentence);capitalizedSentence=clientSentence.toUpperCase()+'\n';// Se eu colocar um BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in)) PARA DE FUNCIONAR PQ?;outToClient.writeBytes(capitalizedSentence);}}}
packageclienteServer;importjava.io.*;importjava.net.*;importjava.util.Scanner;publicclassTCPServer{publicstaticvoidmain(String[]args)throwsException{StringclientSentence;StringcapitalizedSentence;ServerSocketwelcomeSocket=newServerSocket(6789);SocketconnectionSocket=welcomeSocket.accept();while(true){BufferedReaderinFromClient=newBufferedReader(newInputStreamReader(connectionSocket.getInputStream()));DataOutputStreamoutToClient=newDataOutputStream(connectionSocket.getOutputStream());clientSentence=inFromClient.readLine();System.out.println("Received: "+clientSentence);capitalizedSentence=clientSentence.toUpperCase()+'\n';// Se eu colocar um BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in)); capitalizedSentence = infromUser.readLine(); PARA DE FUNCIONAR PQ? A MENSAGEM NAO E RETORNADA AO CLIENTE;outToClient.writeBytes(capitalizedSentence);}}}
I
igor_ks
fica mais facil vc falar oq esta acontecendo, pq nao esta funcionando, em apenas colocar o codigo
dificil alguem responder dessa forma, pq tem q ler o codigo, entender teu raciocinio pra descobrir qual o erro
E
evertonsilvagomesjav
Na minha classe TCPServerClient quando eu mando a msg para o servidor assim:
while(flag.equalsIgnoreCase("")){
BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in));
DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
System.out.println("Everton diz: ");
sentence = inFromUser.readLine();
outToServer.writeBytes(sentence + '\n');
modifiedSentence = inFromServer.readLine();
System.out.println("Server diz: " + modifiedSentence);
}
Vai corretamente, quando chega no TCPServer a msg e ele responde apenas dando um toUpperCase na msg vinda do Client funciona, mas quando eu tento digitar algo para o Servidor responder nao funciona, ele chega na linha
outToClient.writeBytes(capitalizedSentence);
E volta no while do proprio servidor em vez de ir para o Client