Salve a tutti!!!
Usando questa classe che usa la readObject()
public class MessageReceiver extends Thread {
protected Thread parent;
protected Queue messageQueue ;
protected ObjectInputStream iObjStream ;
public MessageReceiver (Thread parent, Queue q, ObjectInputStream i) {
super ();
this.parent = parent;
messageQueue = q ;
iObjStream = i ;
}
public void run () {
NodeMessage message ;
try {
while ( true ) {
message = (NodeMessage) iObjStream.readObject();
messageQueue.add(message) ;
}
} catch (ClassNotFoundException ex) {
ex.printStackTrace() ;
} catch ( IOException ex2 ) {
ex2.printStackTrace() ;
}
}
}
mi capita una cosa stranissima.
La prima volta message ha tutti i valori corretti.
Ma se legge una seconda volta, ed uno dei campi di message ha subito dei cambiamenti, questi ultimi non vengono notificati e tengo sempre gli stessi valori.
Un campo di message è "stato", che è un oggetto di cui un attributo cambia. Ma se faccio "message.stato.attributo" quest'ultimo è sempre quello della prima volta.
Qualcuno sa aiutarmi???