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

Entrée/Sortie Java Discussion :

[debutant] Détecter si un port est utilisé


Sujet :

Entrée/Sortie Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 11
    Points : 7
    Points
    7
    Par défaut [debutant] Détecter si un port est utilisé
    bonjour,
    je désire savoir s'il existe un moyen en java pour savoir si un port est ouvert.
    j'ai une solution pas très propre qui consiste à tenter la création d'un socketServer avec le port qui m'intéresse. Et si une exception est levée alors cela signifie que le port est occupé et ma méthode s'arrête. sinon je ferme la socket précédement créée pour ensuite utiliser mon port.
    voici mon 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
    //test pour savoir si le port est déjà utilisé
            ServerSocket test = null;
     
            try{
                test = new ServerSocket(port);
            }catch(Exception e){
                //port occupé --> fin de la méthode
                System.out.println("erreur");
                stop();
            }
     
            //le port n'est pas utilisé
            try {
                //fermeture du port
                test.close();
            }
            catch (IOException e2) {
            }
     
           //ma méthode peut utiliser le port
    Cette solution est pas très belle. Aussi je recherche une méthode java plus simple.
    En vous remerciant d'avance

  2. #2
    Membre averti Avatar de guignol
    Inscrit en
    Mai 2002
    Messages
    309
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 309
    Points : 339
    Points
    339
    Par défaut
    Je la trouve pas si moche ta solution...

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    merci pour le compliment.
    Il n'y a donc pas de méthodes java, du genre isActive(numPort), qui existe ???

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par guignol
    Je la trouve pas si moche ta solution...
    +1

    Par contre je ne comprend pas pourquoi tu refermes le port si tu arrive à ouvrir ta socket ?

    Si tu veux utiliser le port ca ne sert à rien de le refermer pour le rouvrir un peu plus loin...

    a++

  5. #5
    Futur Membre du Club
    Inscrit en
    Mai 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    en fait je n'utilise pas les sockets pour communiquer, mais un logiciel externe (qui ne sait pas gérer les ports déjà ouverts) . Le code que je vous ai donné est juste un test pour dire à mon logiciel si le port est libre d'utilisation ou non

    Merci à vous pour vos réponses !

  6. #6
    Membre habitué
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Points : 186
    Points
    186
    Par défaut
    Une fois que tu as obtenu ton port, t'en sers tu pour des connexions sécurisées (utilisant par exemple SSL) ?

  7. #7
    Futur Membre du Club
    Inscrit en
    Mai 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    oui, c'est l'autre logiciel qui gère tout ça. Pourquoi cette question ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Détecter quel compte windows est utilisé.
    Par xrorox dans le forum VBScript
    Réponses: 4
    Dernier message: 03/06/2010, 11h16
  2. Savoir si un nom de service ou un port est utilisé.
    Par arnaud.tlse dans le forum Scripts/Batch
    Réponses: 8
    Dernier message: 28/04/2009, 20h09
  3. Comment analyser quel port série est utilisé ?
    Par petitclem dans le forum C
    Réponses: 7
    Dernier message: 29/07/2008, 09h08
  4. test si un port est deja utilisé
    Par lezurp dans le forum C#
    Réponses: 4
    Dernier message: 28/03/2008, 16h34
  5. checker si un port est utilisé ou non
    Par Jérémy Lefevre dans le forum Flash
    Réponses: 7
    Dernier message: 06/06/2007, 14h23

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