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 :

Communication entre java et VB : prob de socket


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 146
    Points : 78
    Points
    78
    Par défaut Communication entre java et VB : prob de socket
    salut,
    J'ai deux applications une en java et l'autre en VB 6 qui sont censé communiqués a travers les sockets.
    Mon problème, qui est coté java, est la récuperation du message envoyé par l'application en VB.

    Voici un bout de 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
     
    try
    		{
    			Socket s = new Socket(InetAddress.getByName("localhost"),1311);
    			PrintStream output = new 	    
    		    BufferedReader client = new BufferedReader(new InputStreamReader(s.getInputStream()));
    		    System.out.println(s.getInputStream());
     
    		    try {
     
    		    	String msg_String = client.readLine(); 
    		    	System.out.println("String from the client : " + msg_String.toString());
    		    }
    		    catch (IOException e) {
    		    	System.out.println("Couldn't get I/O for the connection to: ");
     
    		    }
     
     
    		}catch(Exception e)
    		{
    			e.printStackTrace();
     
    		}
    Et dans la console j'ai quelques chose comme ca :
    java.net.SocketInputStream@2431b9

    Et puis l'application se plante totalement!!
    Pouvez vous m'aider svp ??
    Merci

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Je ne connais pas l'origine exacte de ton problème, mais j'ai tout de même un conseil à te donner:

    Pour la communication entre applications par socket, tu te simplifierais grandement la vie en utilisant la librairie "commons-net", de Jakarta.
    En t'appuyant sur les sources des différents clients de cette librairie (Telnet, ftp, etc...), tu trouveras sans doute comment programmer le tien proprement
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2005
    Messages : 241
    Points : 399
    Points
    399
    Par défaut
    Bonjour,
    l'affichage "java.net.SocketInputStream@..." est lié à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println(s.getInputStream());
    le code suivant est incorrect:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PrintStream output = new
    Ensuite, readline() devrait lire le flux réseau jusqu'à la découverte d'un caractère '\n' il me semble.
    Vérifiez donc votre programme VB pour vous assurer que ce caractère est inclus dans le message, ou modifiez votre routine de lecture du flux réseau.

    S. Desbois

  4. #4
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 146
    Points : 78
    Points
    78
    Par défaut
    salut,
    j'ai changé le code en cette nouvelle version

    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
     
    Socket client= null;
    		PrintWriter out=null;
    		BufferedReader in=null;
     
     
    		try
    		{
    			client = new Socket(InetAddress.getByName("localhost"),1311);
    			out = new PrintWriter(client.getOutputStream(),true);
    			in = new BufferedReader(new InputStreamReader(client.getInputStream()));
     
    		}catch(UnknownHostException e) {
                System.err.println("Don't know about host: taranis.");
                System.exit(1);
            } catch (IOException e) {
                System.err.println("Couldn't get I/O for the connection to: taranis.");
                System.exit(1);
            }
     
     
            BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));
            String fromServer;
            String fromUser;
            try
            {
            out.println("haloooooooo");
            out.flush();
            System.out.println("le serveur dit : "+in.readLine());
     
            client.close();
            }catch (Exception e){e.printStackTrace();}
    Et la comme d'habitude l'application se plante completement. Alors j'ai fermé le serveur (qui est en vb) et la mon application java a ecrit avec succès le message envoyé par le serveur (avec ou sans le \n)
    Mais sinon, pourquoi mon application se plante ?? et comment resoudre ca ??

  5. #5
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 146
    Points : 78
    Points
    78
    Par défaut
    S'il vous plait aider moi!!! je suis bloqué !

Discussions similaires

  1. Réponses: 17
    Dernier message: 04/09/2010, 19h57
  2. Communication entre Java et : PHP ou Javascript?
    Par benthebest dans le forum Langage
    Réponses: 5
    Dernier message: 09/11/2009, 20h02
  3. communication entre java et javaScript
    Par sebac dans le forum Général Java
    Réponses: 9
    Dernier message: 26/08/2009, 13h52
  4. Conseil sur la communication entre java et excel
    Par sebac dans le forum Documents
    Réponses: 2
    Dernier message: 02/07/2009, 11h15
  5. Communication entre Java et Flex
    Par Elmotardo dans le forum Général Java
    Réponses: 0
    Dernier message: 30/04/2009, 11h27

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