tenho cliente e servidor sockets,
como faço para testar, preciso de 2 maquinas??
Valeu[]
tenho cliente e servidor sockets,
como faço para testar, preciso de 2 maquinas??
Valeu[]
Você precisa de uma só, mas você deve iniciar primeiro o servidor e depois o cliente. Isso não é difícil, e para o endereço, use o endereço da máquina (que você pode determinar usando o comando ifconfig ou ipconfig), ou então localhost.
Oi,
Você também pode cria um simulador… onde simula um ambiente sem servidor… e testando via telnet.
Tchauzin!
Estou estudando sockets, sabe o código compila sem problemas mas, o cliente simplesmente não dá nem sinal de vida. Eu presciso testar em dua máquinas diferentes é???
Estou passando o código:
Esse é o meu servidor:
import java.net.*;
import java.io.*;
import java.util.Scanner;
public class Server {
public static void main( String args[] ){
try{
ServerSocket server = new ServerSocket( 1100 );
System.out.println( "Porta aberta 1100." );
// conetctando o cliente
Socket connection = server.accept();// cliente
System.out.printf( "Conexão Estabelecida com o computador %s.",
connection.getInetAddress().getHostAddress() );
Leitor leitor = new Leitor( connection.getInputStream() );
new Thread( leitor ).start();
/*
BufferedReader entrada = new BufferedReader( new InputStreamReader( connection.getInputStream() ) );
PrintStream saida = new PrintStream( connection.getOutputStream() );
String value = "O Servidor Escreveu Esse Texto!";
String line = entrada.readLine();
while( true ){
System.out.println( line );
if( line == null )
break;
}// final da instrução while
saida.println( value );
*/
Scanner in = new Scanner(System.in);
PrintStream out = new PrintStream( connection.getOutputStream() );
while( in.hasNextLine() ){
out.println( in.nextLine() );
}// final da instrução while
}catch( Exception exception ){
System.out.printf( "Ocorreu um erro %s", exception.getMessage() );
}
}// final do metodo main
}// final da classe server
E Esse é o meu cliente:
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Client {
public static void main( String args[] ){
// Linha de execução do cliente
try{
// estabelecendo a conexão
Socket client = new Socket( "localhost", 1100 );
System.out.println( "O cliente se conectou ao servidor." );
Leitor leitor = new Leitor( client.getInputStream() );
new Thread( leitor ).start();
/*
//capturando entrada de dados do konsole
//System.out.println( "Escreva os dados a serem transferidos." );
BufferedReader input = new BufferedReader( new InputStreamReader( client.getInputStream() ) );
// saida para o servidor
PrintStream output = new PrintStream( client.getOutputStream() );
String value = "O Cliente Escreveu Esse Texto.";
String line = input.readLine();
while( line != null ){
System.out.println( line );
output.println( value );
}// final da instruçao while
*/
Scanner in = new Scanner(System.in);
PrintStream out = new PrintStream( client.getOutputStream() );
while( in.hasNextLine() ){
out.println( in.nextLine() );
}// final da instrução while
client.close();
in.close();
out.close();
}catch( Exception exception ){
System.out.printf( "Ocorreu um erro %s.", exception.getMessage() );
}// final de try...catch
}// final do metodo main
}// final da classe Client
Aí pessoal, o código pareçe estar correto, mas eu não sei por que não funciona.
Se der pra dar uma ajudinha eu agradeço.
Desde já, meu muinto obrigado.