salve a tutti avrei un problemino da esporre.
sto sviluppando un applicazione client/server ..
il client deve necessariamente registrarsi sul server
quindi ho creato un metodo
transferTo(String command,Person p,License lic){
try{
ObjectOutputStream odata=new ObjectOutputStream(sock.getOutputStream());
odata.writeObject(command);
odata.writeObject(p);
odata.writeObject(lic);
}catch(Exception e){
}
}
class Person implements Serializable{}
class License implements Serializable{}
vorrei capire una cosa, innanzitutto se provassi semplicemente ad inviare al server il comando 'command', riesco tranquillamente a leggerlo con
String command = idata.readObject().toString();
pero se provassi a leggere un oggetto di classe Person
Person p= (Person) idata.readObject();
non viene letto !!
il server non mi stampa nessun messaggio di errore o altro..
Per esempio se volessi leggere il nome della persona,non me lo visualizza.
System.out.println("Nome: "+p.getName());
Pero il metodo parla chiaro devo spedire contemporaneamente sia l'oggetto 'Person', sia l'oggetto 'License' e sia il comando 'command'
ho provato inizialmente in 2 modi:
1)odata.writeObject(command+" "+p+" "+lic);
2)odata.writeObject(command);
odata.writeObject(p);
odata.writeObject(lic);
pero non so come leggerli sequenzialmente prima il comando e contemporaneamente l'oggetto 'p' e la licenza 'lic'.
fatemi sapere presto...sono giorni che ci sto dietro ma non trovo alcun chiarimento in merito..grazie anticipatamente.
Ultima modifica effettuata da killer il 28/06/2011 alle 13:43 |