Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    22

    [java]Connessione a Server

    ciao a tutti
    dovrei realizzare un' applicazione che si connette a un Server scritto in vb ho pensato di utilizzare i Socket ma inserisco la porta e il server ma mi solleva un'eccezione del tipo:
    java.net.ConnectException: Connection Refused: no further information
    ora mi viene da chiedere è possibile far connettere java a un Server VB se si come si fa?
    di seguito è riportato il codice per la connessione:

    String server = "127.0.0.1";
    int port = 4321;
    private Socket s;
    String temp;
    try{
    System.out.println("Connecting to server...");
    System.out.println(server+ " " + port);
    s = new Socket(server, port);
    }catch (Exception e){ System.out.println(e.toString());}
    Spero che riusciate a risolvermi questo problema!!
    ciaoooooooo

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Sei sicuro che il server in VB sia in attesa di una connessione sulla porta indicata? Ho visto, poi, che come indirizzo hai usato il loopback (127.0.0.1), quindi immagino che il server lo farai girare in locale rispetto al client... oppure ti sei dimenticato di cambiare il valore dell'IP??

    Il codice che hai postato mi sembra corretto.



    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    22
    il server lo metto in ascolto con il metodo .Listen ogni tot secondi faccio il controllo se lo stato del socket è diverso da 2 o da 7 se diverso lo chiudo e lo rimetto in ascolto e infine nella funzione:
    ConnectionRequest
    accetto la richiesta di connessione cosi come segue:
    Winsock1.Accept requestID
    l'ip è quello locale(lo provo in locale) e le porte sono le stesse
    se vuoi ti mando il codice di entrambi i programmi
    grazie
    gabriele

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Il metodo Listen??

    Io uso il metodo della classe ServerSocket accept():

    codice:
    try {
       ServerSocket server = new ServerSocket(porta);
       Socket client = server.accept(); // in attesa del client
       // Ora il client si è connesso
       // Io di solito faccio partire un thread che mi gestisce la connessione
    } catch (Exception e) {}
    A questo punto non ti preoccupi di quando il client effettua la connessione: quando il client si connette la ServerSocket ti crea una socket di comunicazione con il client che tu usi esattamente come nel client. Io di solito faccio partitre un thread che mi gestisce la connessione con il client (anche perchè il mio server gestisce più client).

    Finchè il client non si connette l'applicazione rimane ferma in attesa della connessione (fa tutto il metodo accept() ).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Originariamente inviato da Maveric
    il server lo metto in ascolto con il metodo .Listen ogni tot secondi faccio il controllo se lo stato del socket è diverso da 2 o da 7 se diverso lo chiudo e lo rimetto in ascolto e infine nella funzione:
    ConnectionRequest
    accetto la richiesta di connessione cosi come segue:
    Winsock1.Accept requestID
    l'ip è quello locale(lo provo in locale) e le porte sono le stesse
    se vuoi ti mando il codice di entrambi i programmi
    grazie
    gabriele
    tecnicamente dovrebbe andare
    scaricati putty (cercalo su google) e prova a connetterti al tuo server

    riguardo alla prima domanda...nn ha importanza in che linguaggi scrivi server\client...l'importante è che comunichino e si capiscano
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.