PDA

View Full Version : [Java] Problema client server con gui


kemistry
28-03-2009, 11:13
Ciao a tutti, ho un problema stranissimo con quella che dovrebbe essere una semplice applicazione client server.

In pratica il server invia al client una lista, poi il client dovrebbe creare altri elementi della lista e poi inviarli al server.

Il problema è che una volta che clicco sul bottone per inviare questi elementi il server non riceve + nulla, avete qualche sugegrimento?

z=lista.size();

for(i=0;i<z;i++){
link h = lista.get(i);
System.out.println(h.nome);

}

os.write(z);
for(i=0;i<z;i++){
to=new link(1,"","","",to);
to=lista.get(i);
os.writeObject(to);
to=to.next;
}

os.writeObject(null);

int y;
while(true)
{
if((y=(int)is.read()) !=-1){
System.out.println("Numero ricevuto: "+y);
}


Questo è il codice che ho messo nel metodo run del server (multithread naturalmente), come vedete, una volta che invio la lista presente sul server, mi metto in attesa con il while true di un semplice numero. Lo stream is è di tipo ObjectInputStream, quello os di tipo ObjectOutputStream.
La prima lista viene inviata senza problemi

final JButton botti=new JButton ("Invia");
c.add(botti);
botti.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
link to=null;
int i=0;
int z=lista2.size();
os.write(z);
for( i=0;i<z;i++){
to=new link(1,"","","",to);
to=lista2.get(i);
System.out.println("invio: "+to.nome);
os.writeObject(to);
to=to.next; }
os.writeObject(null);


Il server non riesce a ricevere il numero e blocca tutto il resto, quelcuno ha qualche idea??