Problema con socket

Nitrous
26 de Mayo del 2008
Hola, estoy haciendo una aplicacion estilo messenger y me pasa una cosa muy extraña, en el servidor tengo un objeto tipo Contacto (creado por mi e implementa la interfaz serializable) en el que se almacena la informacion del contacto (email, nick, estado...). Cuando el cliente modifica su estado o su nick le pasa un objecto Contacto al servidor para que modifique su objeto, haciendo uso de un ObjectInputStream y ObjectOutputStream. El problema es el siguiente: la primera modificacion que le mando lo hace bien, sobreescribe su variable Usuario (asi se llama el objeto) y el estado se cambia perfectamente en el servidor, pero la siguiente vez y sucesivas que le mando una modificacion recibe el mismo mensaje anterior, es decir, si por ejemplo cambio el estado a Ausente la primera vez a partir de ahi siempre recibira la informacion de Usuario con estado Ausente y mismo Nick y demas, modifique lo que modifique. He hecho mil comprobaciones y en el cliente si se modifica la variable Usuario perfectamente, el mensaje se construye bien pero al llegar al servidor recibe los datos anteriores. He intentando vaciando el stream de escritura con flush depues de enviar pero tampoco me tira.

A ver si me podeis echar una mano, gracias.