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 :

echange de donnees clients/clients avec les sockets


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 14
    Par défaut echange de donnees clients/clients avec les sockets
    Salut a tous

    Je suis entrain de realiser une application java qui fonctionne en reseau grace aux sockets
    j'ai deja reussi a etablir une connexion entre le serveurs et les differents clients mais etant relativement novice en java et totalement debutant avec les sockets , je ne sais pas comment faire l'echange de donnees entre 2 clients
    Je pense qu'il faut faire transiter les donnees par le serveur ,mais voila lorsqu'un client envoie des donnees au serveur,celui ci les recoit bien mais il envoie une reponse a ce meme client et non aux autres
    et donc je voudrais savoir comment realiser l'echange des donnees entre 2 ou plusiseurs clients

    Merci d'avance pour vos reponses

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Quand le serveur écrit sur une socket, il envoie au client de l'autre coté de cette socket. Si le serveur veux envoyer à tous les clients, il doit écrire sur chacune des sockets le message. Le client ne peux pas envoyer aux autres clients directement, c'est au serveur de le faire.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 14
    Par défaut
    Dans ce cas comment faire pour que le serveur envoie a un client ce qu'il a reçu d'un autre client ?
    Il y a-t-il un moyen de changer le socket au quel le serveur doit repondre ?
    De tel sorte qu'il ne reponde pas a celui qui a ecrit mais a un autre client ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    y a rien à changer. Si ton serveur a reçu deux connections, tu dois avoir deux objets sockets, à toi de les gérer correctement. Normalement, tu dois avoir autant d'objets Socket que tu n'a reçu de connection au serveur. Sur chaque socket tu as un outputStream dans lequel tu peux écrire tes datas pour ce client là.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 14
    Par défaut
    Déjà merci pour tes réponses j'ai donc décider de stocker tous les Sockets dans une Arraylist après chaque connexion ( après chaque appel de la méthode accept() je sauvegarde le nouveau socket dans ma liste) .Puis lors de l'envoi des données, je fais un envoi pour chaque socket contenue dans ma liste , je me disais qu'avec ça le serveur enverrait mon objet a chaque client mais non il ne l'envoi toujours qu'a celui qui a envoyé le message .
    Comment faire alors pour envoyer les données a chaque socket si même en faisant un envoi sur chaque socket ça ne marche pas

    Merci

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    montre ton code.

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

Discussions similaires

  1. Architecture Client/Serveur avec les SOCKET
    Par Zodiark dans le forum Langage
    Réponses: 2
    Dernier message: 26/05/2011, 14h11
  2. application client-serveur avec les sockets
    Par matheo600 dans le forum C++
    Réponses: 1
    Dernier message: 20/04/2008, 17h21
  3. communication client serveur avec les sockets
    Par timtima dans le forum Linux
    Réponses: 2
    Dernier message: 07/11/2007, 10h23
  4. application client/serveur avec les sockets
    Par baya1 dans le forum JBuilder
    Réponses: 1
    Dernier message: 24/02/2007, 15h37

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