|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: May 2004
Città: uboldo
Messaggi: 25
|
Socket e ServerSocket
Per far funzionare una socket e una serversocket di cosa si ha bisogno?
Sto cercando di realizzare una chat in java e non capisco per quale motivo allo stage dove c'era una linea lan tra i computer dell'ufficio i socket funzionavano e a casa no. Il server socket mi dice che c'è una ioexception che dice che non può connettersi ma poi scrive connesso. Cosa posso fare per risolvere il problema? ![]()
__________________
#anna# |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
qualche info in piu'?
la stack trace della IOException? hai configurato correttamente il tcpip sulla macchina su cui stai provando? (anche se non e' su una lan) |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: May 2004
Città: uboldo
Messaggi: 25
|
Cos è che dovrei aver sistemato?Mi puoi spiegare nei minimi dettagli come faccio a fare funzionare una socket e un server socket?
Grazie
__________________
#anna# |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Quote:
1) Configuri il tcpip sulla macchina che stai usando. 2) crei un ServerSocket in ascolto su qualche porta. 3) crei un'istanza di Socket che si connette al ServerSocket precedentemente creato. 4) leggi e scrivi tutto quello che vuoi tra gli oggetti dei punti 2 e 3. |
|
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Sep 2002
Messaggi: 57
|
se vuoi + in dettaglio ecco un mio progetto...
dovrebbe esserti utile: import java.net.*; import java.io.*; public class tcpServer { public static void main(String args[]) { int port; ServerSocket server_socket; BufferedReader input; try { port = Integer.parseInt(args[0]); } catch (Exception e) { System.out.println("port = 1500 (default)"); port = 1500; } try { server_socket = new ServerSocket(port); System.out.println("Server waiting for client on port " + server_socket.getLocalPort()); // server infinito Loop while(true) { Socket socket = server_socket.accept(); System.out.println("New connection accepted " + socket.getInetAddress() + ":" + socket.getPort()); input = new BufferedReader(new InputStreamReader(socket.getInputStream())); try { while(true) { String message = input.readLine(); if (message==null) break; System.out.println(message); } } catch (IOException e) { System.out.println(e); } try { socket.close(); System.out.println("Connection closed by client"); } catch (IOException e) { System.out.println(e); } } } catch (IOException e) { System.out.println(e); } } } ecco spero ti sia d' esempio |
![]() |
![]() |
![]() |
#6 |
Junior Member
Iscritto dal: May 2004
Città: uboldo
Messaggi: 25
|
Per kingv: in che senso devo configurare il tcp-ip?
Poi i punti 2 3 4 penso che funzionini. Allo stage tutto mi andava però. Per ~{Blackangel}~ UT: proverò il codice che mi hai dato. Grazie mille a tutte e due ![]()
__________________
#anna# |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Quote:
nel senso che almeno l'interfaccia di loopback deve essere funzionante (ovvero se digiti ping 127.0.0.1 funziona e non ti dice host unreachable) |
|
![]() |
![]() |
![]() |
#8 |
Junior Member
Iscritto dal: May 2004
Città: uboldo
Messaggi: 25
|
Ascolta ora mi va e non so il perchè: di programmi funzionanti come server ne ho 3, e almeno uno va. Provo a controllare perchè quel programma va e se t interessa ti dico cosa c è di diverso rispetto ai due programmi che nn vanno.
ciao ![]()
__________________
#anna# |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:13.