Sockets

0 respostas
A

Bom dia a todos, esse é o meu primeiro post no forum.

Eu já li muita coisa a respeito de Sockets no fórum, ja pesquisei bastante coisa no google e vi muitos códigos prontos, mas ainda não achei nada que resolvesse meu problema, por isso criei esse tópico :smiley: .

O meu problema é esse: preciso fazer uma aplicação que utilize Sockets em que o Cliente envie Strings para o Servidor e o Servidor envie Strings para o Cliente.
E o principal objetivo é que seja bem simples, pretendia não usar Threads (que é o que eu sempre vejo) e não precisa que vários clientes se conectem ao servidor.

Eu consegui fazer o Cliente enviar dados para o Servidor, mas o contrário não.

Esse é o código do Servidor

public class Servidor {
	
	public static void main(String[] args) throws IOException {
		
		ServerSocket servidor = new ServerSocket(12345);
		
		SimpleDateFormat formata = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
		
		System.out.println("Porta 12345 aberta");
				
		Socket cliente = servidor.accept();
									
		System.out.println("Nova conexão:" + cliente.getInetAddress().getHostAddress() +
				" Data e Hora: " + formata.format(Calendar.getInstance().getTime()));
		
		Scanner entrada = new Scanner(cliente.getInputStream());
								
		while(entrada.hasNextLine()){
			System.out.println(entrada.nextLine());
						
		}

Esse é o código do Cliente

public class Cliente {
	
	public static void main(String[] args) throws UnknownHostException, IOException {
		
		Socket cliente = new Socket("127.0.0.1", 12345);
					
		System.out.println("Entre com a mensagem para transmitir");
		Scanner teclado = new Scanner(System.in);
		
		PrintStream saida = new PrintStream(cliente.getOutputStream());
				
		while (teclado.hasNextLine()){
			saida.println("Cliente: " + teclado.nextLine());
		}

Eu fiz umas tentativas, meio que utilizando o método de tentativa e erro, que não deram certo.
Tentei criar um ServerSocket no cliente e mais um socket no Servidor e tentar fazer os dois se conectarem e com a conexão fazer os dois trocarem mensagens mas não deu certo…
Alguém poderia me ajudar?

Obrigado desde já.

Criado 4 de maio de 2011
Respostas 0
Participantes 1