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

C# Discussion :

interaction entre client C# et serveur java


Sujet :

C#

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 39
    Points : 1
    Points
    1
    Par défaut interaction entre client C# et serveur java
    Salut a tous ami programmateur, je requiert aujourd'hui votre aide pour un problème dans mon code, je m'explique:

    j'ai réussi a connecter mon client a mon serveur (client: TcpClient et serveur: socket) et l'envois d'un message du client au serveur s’effectue a merveille, cependant l'inverse ne marche pas (serveur vers client) je vous communique mes code pour l'envoi/réception des donnée)

    client:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public void SendLogin(NetworkStream ns, string command, string username, string password)
        {
            StreamWriter sw = new StreamWriter(ns);
            sw.WriteLine(command + " " + username + " " + password);
            sw.Flush();
            sw.Close();
        }
        public String ReceiveString(NetworkStream ns)
        {
            string value = "";
            StreamReader sr = new StreamReader(ns, Encoding.ASCII);
            value = sr.ReadLine();
            return value;
        }
    networkStream est défini ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    public NetworkStream networkStream;
    networkStream = server.GetStream();
    et l'appel des deux méthode:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    PacketsOut.SendLogin(networkStream,"Login", "user", "pass");
    PacketsOut.ReceiveString(networkStream);
    serveur:
    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
    public void ReceiveData(Socket socket, String command) throws IOException {
    		System.out.println("reception");
     
    		String[] dataIn;
     
    		BufferedReader br = new BufferedReader(new InputStreamReader(
    				socket.getInputStream()));
    		String input = br.readLine();
    		System.out.println("receive: " + input);
    	}
     
    	public void SendData(Socket socket, Object data) throws IOException {
    		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
    				socket.getOutputStream()));
     
    		bw.write((String) data);
    		System.out.println("send: " + data);
    	}
    voila en espérant que vous m'aidiez a trouver mon problème
    PS: avec ce code le networkStream devient null entre l'envoi et la réception des données

  2. #2
    Membre chevronné
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 650
    Points : 2 174
    Points
    2 174
    Par défaut
    Bonjour,

    il faudrait faire un thread d'écoute car comment être sur que quand tu envoies avec le serveur , que le client n'a pas déjà écouté et passé a autre chose ? Je doute que streamReader.ReadLine() soit bloquant.

    Tu fais un thread d'écoute dans le client (si le serveur ne sert qu'a envoyé les données de login, sinon il en faudrait un aussi dans le serveur) pour être sur que tu ne manques aucune infos venant du serveur

    EDIT : J'avais oublié de te demander :

    cependant l'inverse ne marche pas (serveur vers client)
    Définit "ne marche pas".Erreur ? Rien a lire ?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 39
    Points : 1
    Points
    1
    Par défaut
    bha j'ai le droit a un Cannot read stream

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 39
    Points : 1
    Points
    1
    Par défaut
    Alors, d'après les thread serveur tout marche niquel, par contre dans les thread client, seul le thread de la méthode SendLogin marche

    EDIT: les deux thread client marche bien, j'avais juste lancer deux fois le même thread

  5. #5
    Membre chevronné
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 650
    Points : 2 174
    Points
    2 174
    Par défaut
    Du coup ça marche maintenant ?

  6. #6
    Membre du Club
    Inscrit en
    Février 2013
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 34
    Points : 43
    Points
    43
    Par défaut
    http://www.conrad.fr/ce/fr/product/0...al-joursemaine

    Attention , tu t'adresses a des boites électroniques

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 39
    Points : 1
    Points
    1
    Par défaut
    Non j'ai toujours le client qui arrive pas à lire les message du serveur.
    ça ne serrait pas un problème au niveau du streamreader par hasard?

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 39
    Points : 1
    Points
    1
    Par défaut
    quelqu'un aurais-t-il un avis sur mon problème?

  9. #9
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 39
    Points : 1
    Points
    1
    Par défaut
    Je me permet de rajouter une autre message pour dire que mon problème est résolus, je n'ai pas encore bien compris pourquoi cela ne marchais pas mais ca marche enfin, merci a tous pour votre aide

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

Discussions similaires

  1. Communication entre page HTML et serveur Java
    Par Gueuz dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 06/01/2013, 15h08
  2. Page interactive entre clients
    Par Sylphide7 dans le forum Débuter
    Réponses: 6
    Dernier message: 19/12/2012, 13h35
  3. Client Flash et Serveur Java
    Par eddynamique dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 05/10/2010, 09h43
  4. [Web Service][SOAP] Client PHP et Serveur JAVA
    Par Asfaloth dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 05/05/2010, 11h19
  5. aide technique sur "interaction entre clients"
    Par mictif dans le forum Langage
    Réponses: 5
    Dernier message: 17/07/2008, 13h12

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