Ciao,
ho un problema di comunicazione tra client e server, sto provando a realizzare una chat tra un client e server,
il problema è che non riesco a far ricevere al server il messaggio del client, vi posto il codice di entrambe le parti:

Codice Server
codice:
import java.io.*;
import java.net.*;

public class ChatServer {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		
		
		ServerSocket srvSock;
		try {
			
			
			//Inizializzo il Server
			srvSock = new ServerSocket(12233);
			
			System.out.println("Inizializzato Server: " + srvSock);
			
			//Inizializzo la connessione col client
			Socket clntSock = srvSock.accept();
			
			System.out.println("Connessione col Client: " + clntSock);
			
			
			BufferedReader in = new BufferedReader(new InputStreamReader(clntSock.getInputStream()));
			PrintWriter out = new PrintWriter(clntSock.getOutputStream());
			
			BufferedReader inChat = new BufferedReader(new InputStreamReader(System.in));
			
			String strIn;
			String strOut;
			
			//Metto in ascolto
			
			while(true){
				
				
				strIn = in.readLine();
				
				
				System.out.println("Client: " + strIn);
				
				
				
				strOut = inChat.readLine();
				
				
				out.write(strOut);
				System.out.println("Server: " + strOut);
				
				
				
			}
			
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		
		System.exit(0);
		
	}

}
Codice Client

codice:
import java.io.*;
import java.net.*;

public class ChatClient {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		

		try {
			Socket clntSock = new Socket("localhost",12233);
			
			System.out.println("Client connesso: " + clntSock);
			
			BufferedReader inChat = new BufferedReader(new InputStreamReader(System.in));
			BufferedReader in = new BufferedReader(new InputStreamReader(clntSock.getInputStream()));
			PrintWriter out = new PrintWriter(clntSock.getOutputStream());
			
			String strChat;
			String strIn;
			String strOut;
			
			while(true){
				strChat = inChat.readLine();
				
				System.out.println("Client: " + strChat);
				
				out.write(strChat);
				
				strIn = in.readLine();
				
				System.out.println("Server: " + strIn);
			}
			
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		

	}

}
Dopo aver letto la prima riga da tastiera, il client stampa a schermo il messaggio ma non invia al server, ed entrambi si bloccano,
mi potreste aiutare a capire dove sbaglio??