Socketss

Oi pessoal, td bem?
Estou com um problema, estou tentando aprender a mecher com sockets, mas n funciona de jeito nenhum e n sei pq, por favor, sera que alguem poderia me ajudar?

oque eu tentei fazer, é um server q quando recebesse uma mensagem d um cliente, imprimisse a mesma, mas n funciona

vou postar os codigos aqui:

import java.net.*;
import java.io.*;

public class Server {

		ServerSocket s;
		Socket sock;
		public Server()
		{	
			try
			{
				s = new ServerSocket(5000);

				while(true)
				{
										sock = s.accept();
					Thread t = new Thread(new Leitura(sock));
					t.start();
					if (sock.isConnected())
					{
						System.out.println("Conectado");
					}
				}
			}
			catch(Exception ex)
			{
				ex.printStackTrace();
			}
		}// Fim do construtor
		
		public class Leitura implements Runnable
		{
			BufferedReader reader;
			
			public Leitura(Socket s)
			{
				try
				{
				InputStreamReader reader1 = new InputStreamReader(s.getInputStream());
				reader = new BufferedReader(reader1);
				
				} catch(Exception ex) 
				{ 
					ex.printStackTrace(); 
				}
			}

			public void run() {
				try
				{
					while (true)
					{
						while (reader.readLine() != null)
						{
							System.out.println(reader.readLine());
							System.exit(0);
						}
					}
				} catch(Exception ex)
				{
					ex.printStackTrace();
				}
				
			}
		}
	
	
	public static void main(String[] args) {
		new Server();

	}

}

Agora o código do cliente

import java.io.*;
import java.net.*;

public class Client {

	Socket s;

	public Client()
	{
		try
		{
			s = new Socket("127.0.0.1", 5000);
			PrintWriter writer = new PrintWriter(s.getOutputStream(), true);
			writer.println("teste");
		}
		catch(Exception ex)
		{
			ex.printStackTrace();
		}
			
		
	}
	
	public static void main(String[] args) {
		new Client();

	}

}

Os erros são esses:


java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(Unknown Source)
	at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)
	at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)
	at sun.nio.cs.StreamDecoder.read(Unknown Source)
	at java.io.InputStreamReader.read(Unknown Source)
	at java.io.BufferedReader.fill(Unknown Source)
	at java.io.BufferedReader.readLine(Unknown Source)
	at java.io.BufferedReader.readLine(Unknown Source)
	at testes.Server$Leitura.run(Server.java:57)
	at java.lang.Thread.run(Unknown Source)

Pelo que deu pra entender dos livros e tutoriais q eu li, deveria funcionar, se alguem puder me explicar o pq não esta dando certo, por favor, me de uma mão.
[]´s

Parece q ele n ta passando os parametros corretos da conexão do cliente para a classe que executara a nova Thread, alguem sabe arrumar isso?

brigadão galera.

Fala galera, blz??

segue link que dei um help outro dia, deve te ajudar!

http://www.guj.com.br/posts/list/2930.java

Abraço,

Opa, brigadão cara, vou dar uma olhada.

So que oque eu n consigo entender, é pq n consigo passar a conexão, para a minha class que executara uma nova thread, ja quebrei a cabeça e nn entendi pq =/

Muit obrigado ae kra, vou dar uma olhada la, vm v c me ilumina hehehe, valeu mesmo

cara, c n sabe, olha o erro q deu agora =((((

java.io.StreamCorruptedException: invalid stream header
at java.io.ObjectInputStream.readStreamHeader(Unknown Source)
at java.io.ObjectInputStream.(Unknown Source)
at testes.TrataCliente.run(Servidor.java:58)

Opa, eu troquei o ObjectInputStream por um BufferedReader e funcionou, brigadão ae cara