|
|
|
![]() |
|
Strumenti |
![]() |
#1 | ||
Senior Member
Iscritto dal: Dec 2002
Città: Sistema Solare
Messaggi: 2458
|
[JAVA] problema con piccola applicazione client-server
Salve a tutti! Mi sto esercitando per preparare un esame, e ho svolto questo esercizio:
Completare il codice del server SequenzaBinaria in base alle seguenti specifiche: 1 – E’ in ascolto su una porta specificata dall’utente al momento dell’esecuzione. 2 – Gestisce un solo client alla volta. 3 – Il protocollo di comunicazione è testuale e basato su codifica caratteri-byte “ASCII”. 4 – Quando un client si connette, aspetta di ricevere dal client una sequenza di soli caratteri 0 e 1, terminata dal carattere ‘#’. 5 – Invia al client due numeri, n0 ed n1, che rappresentano il numero totale di 0 ed il numero totale di 1 della sequenza ricevuta. Ho scritto anche una classe client per testare il tutto, sia questa che l'altra (quella del server) partono, ma ad un certo punto l'esecuzione si blocca. Di seguito posto i codici, commentati. Lato client: Quote:
Quote:
![]()
__________________
- L'utilità è l'acme dell'inutilità. - [Ho felicemente concluso trattative con cranius,playmake,m4urox,pippomostarda,overfusion,dubmehard,holydioxxx,itan1,misaki1980,GiacoT,Shandar,Em-Mc,Konrad76,atlas4877,Crislink,sandru,fpe,moli89.bg,track909,AirGT,Giangy11,jokervero,schumy83,AlexanderIII,xzonex,schumy83,rdaelmito,Don Vito Corleone,Lucatabloid,Francoba,donamara,francescocelso,Blackfenix,xxEmilioxx,s3n3ca,xio,spectrum48k,ste_ita,MagnoGabri,Deadoc3,smanet,tabor65,offdexter87,Defqon1] |
||
![]() |
![]() |
![]() |
#2 |
Junior Member
Iscritto dal: Jan 2007
Città: Vicenza, circa...
Messaggi: 20
|
Secondo me nel ciclo while del server ti conviene controllare che il valore restituito dalla read non sia il carattere # anziche corrispondere a -1.
Ti faccio poi notare che il read del server ritorna il numero del carattere ascii corrispondente, non il carattere stesso. Per il resto lascio parola a chi ne sa piu di me, ![]() Adesso è tardi, magari domattina ci do un altra occhiata ![]() |
![]() |
![]() |
![]() |
#3 |
Messaggi: n/a
|
mi inserisco per sapere se c'è un modo, meglio attraverso eccezione, quando il server chiude il suo socket.
|
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Dec 2002
Città: Sistema Solare
Messaggi: 2458
|
Quote:
![]() ti ringrazio comunque per l'intervento ![]()
__________________
- L'utilità è l'acme dell'inutilità. - [Ho felicemente concluso trattative con cranius,playmake,m4urox,pippomostarda,overfusion,dubmehard,holydioxxx,itan1,misaki1980,GiacoT,Shandar,Em-Mc,Konrad76,atlas4877,Crislink,sandru,fpe,moli89.bg,track909,AirGT,Giangy11,jokervero,schumy83,AlexanderIII,xzonex,schumy83,rdaelmito,Don Vito Corleone,Lucatabloid,Francoba,donamara,francescocelso,Blackfenix,xxEmilioxx,s3n3ca,xio,spectrum48k,ste_ita,MagnoGabri,Deadoc3,smanet,tabor65,offdexter87,Defqon1] |
|
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Dec 2002
Città: Sistema Solare
Messaggi: 2458
|
Quote:
![]()
__________________
- L'utilità è l'acme dell'inutilità. - [Ho felicemente concluso trattative con cranius,playmake,m4urox,pippomostarda,overfusion,dubmehard,holydioxxx,itan1,misaki1980,GiacoT,Shandar,Em-Mc,Konrad76,atlas4877,Crislink,sandru,fpe,moli89.bg,track909,AirGT,Giangy11,jokervero,schumy83,AlexanderIII,xzonex,schumy83,rdaelmito,Don Vito Corleone,Lucatabloid,Francoba,donamara,francescocelso,Blackfenix,xxEmilioxx,s3n3ca,xio,spectrum48k,ste_ita,MagnoGabri,Deadoc3,smanet,tabor65,offdexter87,Defqon1] |
|
![]() |
![]() |
![]() |
#6 |
Messaggi: n/a
|
m, dunque: da lato client, sapere nel momento in cui si legge l'InputStream di un Socket se il server ha già chiuso la connessione (senza per forza arrivare alla fine dell'InputStream quindi).
Inoltre se c'è un modo per sapere se una certa porta su un certo server è aperta, senza per forza dover creare un Socket e ritrovarsi una ConnectException se questa è chiusa |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:52.