IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Probleme dans la creation d'un ServerSocket en java


Sujet :

avec Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 26
    Points
    26
    Par défaut Probleme dans la creation d'un ServerSocket en java
    Bonsoir,
    Je veux créer un proxy en java, pour cela j'ai besoin du package java.net.socket
    Mais lors de l'execution de mon code, ca bloque sur ServerSocket server=new ServerSocket(port)
    VOici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
    import java.net.*;
    import java.io.*;
    import java.util.*;
     
    public class Serveur {
     
    	private 			Vector 		_tabClient=new Vector();
    	private 			int 		_nbClient=0;
    	public 	static 		String[] 	IP;//pour filtrer les ip qui se connecte
     
     
     
    public static void main(String[] args) {
    		Serveur server=new Serveur();
    		try{
     
    			 IP=new String[2];
    		     IP[0]="/127.0.0.1";IP[1]="/195.68.1.11";
    			 Integer port;
    		      if(args.length<=0){
    		    	  	port=new Integer("22000"); // si pas d'argument : port 18000 par défaut
    		      }
    		      else {
    		    	  	port = new Integer(args[0]); // sinon il s'agit du numéro de port passé en argument
    		      }
     
    			//on creer la connexion
    		    ServerSocket theConnexion=new ServerSocket(port.intValue());
    			System.out.println("---------Serveur lancer avec succes-------------");
     
    			//boucle d attente de client
     
    			while(true){
    				/*--------------A chaque nouveau client on ouvre un thread proxy-------------------------------*/
     
    				new Proxy(server,theConnexion.accept(),IP);
    			}
     
    		}
    		catch(Exception e){
    		}
    	}
     
     
    	synchronized public int addClient(PrintWriter out)
    	  {
    	    _nbClient++; // un client en plus ! ouaaaih
    	    _tabClient.addElement(out); // on ajoute le nouveau flux de sortie au tableau
    	    return _tabClient.size()-1; // on retourne le numéro du client ajouté (size-1)
    	  }
    	  synchronized public void delClient(int i)
    	  {
    	    _nbClient--; // un client en moins ! snif
    	    if (_tabClient.elementAt(i) != null) // l'élément existe ...
    	    {
    	      _tabClient.removeElementAt(i); // ... on le supprime
    	    }
    	  }
     
     
    }
    Pourquoi? Est ce quelqu'un peut m'aider?
    Bonne soirée
    Krikri

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 104
    Points : 103
    Points
    103
    Par défaut
    Que veux-tu dire par "ça bloque"? as-tu une exception, un rapport d'erreur?

    EDIT :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    catch(Exception e){
    }
    Tu as surement une exception qui se déclenche sauf que rien ne s'affiche.

    mets un e.printStackTrace() dans le catch pour voir ce qui est dit

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 26
    Points
    26
    Par défaut
    Bonsoir, excusez moi de ne pas vous avoir répondu avant!
    Voici l'erreur que j'obtiens quand je mets : e.printStackTrace();

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    java.net.BindException: Cannot assign requested address: JVM_Bind
            at java.net.PlainSocketImpl.socketBind(Native Method)
            at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
            at java.net.ServerSocket.bind(ServerSocket.java:319)
            at java.net.ServerSocket.bind(ServerSocket.java:277)
            at proxy2.Serveur.main(Serveur.java:42)
    Que faire?
    Merci d'avance et bonne soirée

  4. #4
    Membre actif Avatar de Torg666
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 230
    Points : 254
    Points
    254
    Par défaut
    Alors, dans la javadoc, BindException est declenché dans 2 cas:
    - le port est utilisé.
    - l'adresse ne peu pas etre assignée.

    Dans ton cas j aurai tendance a pencher pour le premier cas.

    Soit dis en passant, suffit de chercher dans la javadoc, par exemple
    LA

    La javaDoc est mon amie, elle est la tienne aussi!

Discussions similaires

  1. Probleme dans la creation des tables
    Par sousan dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/12/2009, 17h27
  2. probleme dans la creation des objet avec condition
    Par yassin123441 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 28/04/2009, 11h03
  3. petit probleme dans une requte POSTGRE SQL
    Par ghis le fou dans le forum Requêtes
    Réponses: 5
    Dernier message: 08/09/2003, 13h51
  4. Probleme dans une clause like !
    Par adil dans le forum Langage SQL
    Réponses: 6
    Dernier message: 15/07/2003, 16h47
  5. Probleme dans ma requete
    Par Kuroro dans le forum Requêtes
    Réponses: 2
    Dernier message: 11/07/2003, 11h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo