ServerSocket et Linux

ServerSocket et Linux - Java - Programmation

Marsh Posté le 13-11-2004 à 20:41:52    

Bonsoir, j'ai un problème très étrange.
Je créé une ServerSocket, sous windows il n'y a aucun problème, la socket  
s'ouvre tout de suite.
Par contre sous linux, il me faut attendre environ 4 ou 5 minutes avant que  
la socket s'ouvre.
J'ai essayé en coupant mon firewall, en ouvrant le port, en changeant de  
version du jdk ... Enfin j'ai tout
essayé :)
Si c'est dejà arrivé à quelqu'un ...
Voici le code :
 
import java.io.* ;
import java.net.* ;
 
public class Server {
 
 ServerSocket ssock ;
 InetAddress iaddr ;
 
 public Server (int port) {
 
  try {
   ssock = new ServerSocket(port) ;
  } catch (IOException ioe) {
   System.out.println("Impossible d'ouvrir la socket sur le port " + port) ;
  } finally {
   System.out.println("Socket ouverte" ) ;
  }
 
 
  try {
   ssock.accept() ;
  } catch (IOException ioe) {
   System.out.println("Erreur d'entrée/sortie" ) ;
  } finally {
   iaddr = ssock.getInetAddress() ;
   System.out.println(iaddr.getHostAddress()) ;
  }
 
  try {
   ssock.close() ;
  } catch (IOException ioe) {
   System.out.println("Impossible de fermer la socket" ) ;
  } finally {
   System.out.println("Socket fermee" ) ;
  }
 
 }
 
 public static void main (String args[]) {
 
  Server serv = new Server (25000) ;
 
 }
 
}
 
Merci d'avance.

Reply

Marsh Posté le 13-11-2004 à 20:41:52   

Reply

Marsh Posté le 14-11-2004 à 14:00:36    

GaSPaRD77 a écrit :

Bonsoir, j'ai un problème très étrange.
Je créé une ServerSocket, sous windows il n'y a aucun problème, la socket  
s'ouvre tout de suite.
Par contre sous linux, il me faut attendre environ 4 ou 5 minutes avant que  
la socket s'ouvre.
J'ai essayé en coupant mon firewall, en ouvrant le port, en changeant de  
version du jdk ... Enfin j'ai tout
essayé :)
Si c'est dejà arrivé à quelqu'un ...
Voici le code :
 
import java.io.* ;
import java.net.* ;
 
public class Server {
 
 ServerSocket ssock ;
 InetAddress iaddr ;
 
 public Server (int port) {
 
  try {
   ssock = new ServerSocket(port) ;
  } catch (IOException ioe) {
   System.out.println("Impossible d'ouvrir la socket sur le port " + port) ;
  } finally {
   System.out.println("Socket ouverte" ) ;
  }
 
 
  try {
   ssock.accept() ;
  } catch (IOException ioe) {
   System.out.println("Erreur d'entrée/sortie" ) ;
  } finally {
   iaddr = ssock.getInetAddress() ;
   System.out.println(iaddr.getHostAddress()) ;
  }
 
  try {
   ssock.close() ;
  } catch (IOException ioe) {
   System.out.println("Impossible de fermer la socket" ) ;
  } finally {
   System.out.println("Socket fermee" ) ;
  }
 
 }
 
 public static void main (String args[]) {
 
  Server serv = new Server (25000) ;
 
 }
 
}
 
Merci d'avance.


bah utilise windows [:dawa]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
ok je sort [:anauff]


---------------
Perhaps you don't deserve to breathe
Reply

Marsh Posté le 14-11-2004 à 14:10:40    

t'étais pas ban toi ?

Reply

Marsh Posté le 14-11-2004 à 14:37:33    

Le truc c'est que j'ai le même problème avec n'importe quel code utilisant les sockets ...
Deuxième exemple :
 

Citation :


import java.net.* ;
import java.io.* ;
 
class Test {
 
    public static void main (String [] args) {
 
        try {
            Socket leSocket = new Socket("www.wanadoo.fr", 80) ;
            System.out.println(leSocket.getInetAddress()) ;
            leSocket.close() ;
        } catch (UnknownHostException uhe) {
            System.out.println("Connexion impossible" ) ;
        } catch (Exception e) {
            System.out.println(e) ;
        }
 
    }
 
}


 
Même chose, je dois attendre quelques minutes avant d'avoir mon resultat.


Message édité par GaSPaRD77 le 14-11-2004 à 14:39:53
Reply

Marsh Posté le 15-11-2004 à 10:06:12    

Glod 2 a écrit :

t'étais pas ban toi ?


kikatoo ???

Reply

Marsh Posté le 06-12-2004 à 14:26:56    

GaSPaRD77 ->  
modifie le fichier /etc/hosts, la ligne qui commence par 127.0.0.1 :

127.0.0.1 localhost nom_de_la_machine

 
Je ne suis pas certain que ca soit la solution mais ya de bonnes chances et cela ne coute rien ;)  
 
terminapor : rassure moi tu le fais exprés ?


Message édité par zerod le 06-12-2004 à 15:27:26
Reply

Marsh Posté le 06-12-2004 à 15:28:09    

en mettant la bonne info à la place de nom_de_la_machine bien sur :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed