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

Langage Java Discussion :

Débutant, Communication entre deux programmes


Sujet :

Langage Java

  1. #1
    Membre à l'essai
    Femme Profil pro
    Doctorante
    Inscrit en
    Mai 2007
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Doctorante

    Informations forums :
    Inscription : Mai 2007
    Messages : 25
    Points : 20
    Points
    20
    Par défaut Débutant, Communication entre deux programmes
    Bonsoir.

    Voilà, je débute en programmation réseau, et je souhaiterais faire communiquer deux programmes se situant sur le même ordinateur, si possible sans utiliser de socket. En fait l'un des programmes est sensé envoyer une chaîne de caractère, qui aura été entrée par l'utilisateur, à l'autre programme. J'avais entendu parler de la commande mknod en C++ pour créer des tuyaux nommés, mais je ne sais pas si elle existe aussi en Java. J'ai fait des recherches mais je n'ai encore rien trouvé... Y aurait-il une commande java permettant de le faire où doit-on obligatoirement passer par le système client/serveur?

    Merci à tous.

  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
    En java, la manière la plus simple pour faire communiquer deux programmes distincts (tournant dans 2 JVMs différentes), c'est RMI (Remote Method Invocation).

    Cependant, ça ne répond à mon avis pas à tes attentes car:
    - RMI communique en mode "client-serveur"
    - il utilise les sockets (même si cela est masqué)

    Si tu veux te passer de RMI, je ne vois pas vraiment comment tu vas pouvoir faire communiquer tes applications sans utiliser de sockets...

  3. #3
    Membre expérimenté Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Points : 1 639
    Points
    1 639
    Par défaut
    Si tu veux vraiment qu'ils soient independants, a travers un fichier texte partage entre les deux ...
    et un thread dans chaque appli qui verifie si quelque chose a ete modifie

    C'est pas tres joli mais ca doit marcher

  4. #4
    Membre averti Avatar de Rayndell
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 289
    Points : 323
    Points
    323
    Par défaut
    Le meilleur moyen de faire communiquer deux processus reste de toute manière le socket. Tu peux par exemple faire dans chacun de tes programmes un thread qui écoute un socket, et un autre qui envoie à travers un socket, puis encore un thread qui traite l'information.

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Points : 556
    Points
    556
    Par défaut
    Citation Envoyé par Madalen
    Bonsoir.

    Voilà, je débute en programmation réseau, et je souhaiterais faire communiquer deux programmes se situant sur le même ordinateur, si possible sans utiliser de socket. En fait l'un des programmes est sensé envoyer une chaîne de caractère, qui aura été entrée par l'utilisateur, à l'autre programme. J'avais entendu parler de la commande mknod en C++ pour créer des tuyaux nommés, mais je ne sais pas si elle existe aussi en Java. J'ai fait des recherches mais je n'ai encore rien trouvé... Y aurait-il une commande java permettant de le faire où doit-on obligatoirement passer par le système client/serveur?

    Merci à tous.
    Tu peux utiliser PipedOutputStream
    Regarde comment l'utiliser

    et encore

  6. #6
    Membre à l'essai
    Femme Profil pro
    Doctorante
    Inscrit en
    Mai 2007
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Doctorante

    Informations forums :
    Inscription : Mai 2007
    Messages : 25
    Points : 20
    Points
    20
    Par défaut
    Merci à tous pour vos réponses. J'ai finalement réussi à me débrouiller en passant par des sockets...
    Encore merci.

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

Discussions similaires

  1. Communication entre deux programmes
    Par GPZ{^_^} dans le forum C
    Réponses: 4
    Dernier message: 28/10/2011, 10h11
  2. Réponses: 17
    Dernier message: 04/09/2010, 19h57
  3. Communication entre deux programmes c# par USB
    Par Sylvain_31 dans le forum C#
    Réponses: 1
    Dernier message: 13/04/2010, 23h27
  4. Communication entre deux programmes Java. http ? Rmi ? WS ? Autres ?
    Par tiboudchou dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 26/03/2009, 12h50
  5. communication entre deux programmes
    Par Invité dans le forum C
    Réponses: 19
    Dernier message: 12/10/2008, 12h07

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