Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    698

    [JAVA] connessione remota

    Scusate i numerosi post ma ho un progetto da consegnare a breve scadenza VVoVe:

    Ho una semplice applicazione client-server che in locale funziona benissimo. Ho deciso di testarla in remoto e non va...ovvero al momento di stabilire la connessione tcp non riesco a contattare il server.

    L'ho provata con un amico, e come indirizzo ip gli ho dato quello dinamico che mi viene assegnato quando mi connetto. Ho lanciato il server, ma non gli arriva niente e lato client dopo un po arriva un'eccezione ConnectionTimeout.

    Guardando da netstat ho notato che il server fa binding sulla porta corretta ma all'indirizzo locale 0.0.0.0 e non al mio indirizzo ip corrente. Va bene oppure dovrebbe ascoltare su quell'indirizzo?

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    87
    A me è successa una cosa analoga. Utilizzavo due programmi con due porte diverse, nella lan funziona a meraviglia, attraverso internet non c'è connessione. Utilizzando invece una pagina jsp sulla 8080 tramite tomcat tutto ok.
    Chi sa dare delucidazioni è il benvenuto. :master:
    Ciao ciao!
    vlr

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    698
    Rispiego il problema, magari un po meglio

    c'e' un server che parte cosi

    ServerSocket server = new ServerSocket(4444);
    Socket socket = server.accept();
    [...]

    In locale, il client cerca di contattarlo su localhost:4444.

    Quando ho provato a testarlo da internet, ho fatto queste cose:
    mi sono connesso, ho tirato su il server, ho letto l'indirizzo ip della mia macchina, ho fatto partire il client sostituendo a localhost detto indirizzo.

    Il server non viene contattato.

  4. #4
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    A me funziona tranquillamente, come sistema ho windows XP:

    file Server.java:

    codice:
    import java.net.*;
    import java.io.*;
    
    class Server{
    
    	public static void main(String[] args) throws IOException{
    		ServerSocket server = new ServerSocket(5013);
    		Socket client = server.accept();
    		System.out.println("connessione stabilita: " + client);
    	}
    
    }
    File Client.java

    codice:
    import java.net.*;
    import java.io.*;
    
    class Client{
    
    	public static void main(String[] args) throws IOException{
    		Socket socket = new Socket("xxx.xxx.xxx.xxx", 5013);
    	}
    
    }
    dove al posto di xxx.xxx.xxx.xxx ho messo il mio indirizzo ip.

    Sei sicuro di scrivere correttamente l'ip? Che sistema hai? Prova a vedere se questo esempio ti funziona,


  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    698
    sono sicuro di mettere l'indirizzo giusto perche se lo provo in locale ma usando l'indirizzo ip corrente invece di localhost, mi funziona

    il sistema operativo è xp sp1

  6. #6
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    ma quand'è quindi che non funziona se fai partire server e client su macchine diverse con diversi ip?

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    698
    esatto

    in locale funziona sia con localhost che con l'indirizzo ip

    se server e client sono su due macchine diverse non funziona

  8. #8
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    CIao; la butto lì... non ci dovrebbe essere qualche file di policy per far accettare le connessioni da un programma Java esterno alla macchina? Mi sembra di sì; almeno sono sicuro che con la tecnologia Jini(framework Java che si basa su RMI) ci vuole un file di policy per effettuare le connessioni. Però con sicurezza non lo so.
    Ciao
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    698
    oddio

    e se cosi fosse che dovrei fare?

  10. #10
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Be' quello che ti suggerirei di fare è postare la domanda sul forum della sun; lì sicuramente ci sarà qualcuno che si sarà imbattuto in questo problema e ti daranno delle soluzioji; inoltre con google proverei a cercare i file di policy per java.
    Tinei presente che la mia era solo una supposizione.
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

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 © 2024 vBulletin Solutions, Inc. All rights reserved.