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

Java EE Discussion :

reponse de Serveur a un client


Sujet :

Java EE

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juillet 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 47
    Points : 32
    Points
    32
    Par défaut reponse de Serveur a un client
    Salut tout le monde
    j`ai un problème , j`arrive pas a faire envoyer un message driven Bean a partir d`un serveur , c a d ; j`ai une application jEE et j`utilise les EJB3 et les Message driven Bean , alors mon application doit retourner 2 messages , le premier celle qui s`affiche au serveur et le second s`affiche au client donc il faut 2 notifications . j`ai fiat la première étape en affichant un msg au serveur ( Glassfish) mais j`arrive pas a faire la seconde étape
    Est ce vs avez une idée concernant cette application ?
    Merci

  2. #2
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    qu'est-ce qui te pose problème dans l'histoire? T'as une erreur à l'envoi du message au broker? T'as une erreur en lecture?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juillet 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 47
    Points : 32
    Points
    32
    Par défaut
    J`ai pas compris votre commentaire, en tout cas, j`ai réalisé une application JEE avec les Ejb3 en utilisant les message driven bean et le serveur d`application Glassfish , alors mon objectif c `est d`avoir 2 messages , le premier s`affiche au log de glassfish et le deuxième partie client , c a d :
    -Si le client va envoyer un message « salut je suis le Client «
    -Au log de serveur s`affiche ce message et ce dernier (le serveur ) va envoyer un message « votre message est transmis « qui s`affiche dans la partie client
    Donc il faut avoir 2 messages a la fin
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    /**************Message driven bean**********************/
    public void onMessage(Message message) {
     
    try {
    MapMessage msg = null;
    msg = (MapMessage)message;
    ObjectMessage objetmessage = (ObjectMessage)message ;
    System.out.println("—————————————-");
    JOptionPane.showMessageDialog(null,msg.getString("lastname"));
    System.out.println(msg.getString("lastname"));
    JOptionPane.showMessageDialog(null,msg.getString("firstname"));
    System.out.println(msg.getString("firstname"));
    JOptionPane.showMessageDialog(null,msg.getString("id"));
    System.out.println(msg.getString("id"));
    System.out.println("—————————————-");
    }
    catch (Exception e){
        System.out.println(" erreur dans la classe de mdb");
    }
     
    /**************Client **********************/
    public static void initiation_message()
    {
     Connection topicConnection = null;
    Session session = null;
    MapMessage message = null;
    MapMessage msg = null;
    MessageProducer producer = null;
    DemandeFormation demandeFormation = new DemandeFormation();
     
     
    try {
    topicConnection = topicFactory.createConnection();
    session = topicConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
    producer = session.createProducer(topic);
    message = session.createMapMessage();
    producer.send(message);
    message.setString("lastname", "Smith");
    message.setString("firstname", "John");
    message.setString("id", "0100");
    producer.send(message);
    }
    catch (Exception e) {
        System.out.println("erreur message_initiation");
    }
    }
    Le log de serveur est
    —————————————-
    Smith
    John
    001

    —————————————-


    J`aime avoir un message de la part de serveur « réception avec succès «


    Et Merci

  4. #4
    Membre éclairé Avatar de Heimdal
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 549
    Points : 718
    Points
    718
    Par défaut
    Salut,

    j'ai rien compris...

    une log n'est pas un message...
    Qui consomme le message que tu publies sur le topic? (le client théoriquement, où est le code de cette partie?)

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juillet 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 47
    Points : 32
    Points
    32
    Par défaut
    bon
    -Client fait une tache : addition (5,5)
    -le serveur répond :
    *dans le log : addition faite par le client (5,5)
    *envoi au client un msg : addition avec succès

    c `est mon objectif : 2 messages : le premier s`affiche dans le log le deuxième va être envoyer vers le client ( sans consulter le log )
    Merci

  6. #6
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    pour ce genre de cohose, il faut traiter comme ceci

    1) Le client crée une queue temporaire et se met à l'écoute de cette queue
    2) le client met le nom de cette queue dans le premier message
    3) Le serveur traite le message
    4) après le traitement, le serveur poste un message dans le queue temporaire
    5) le client recois le message par la queue temporaire
    6) le client qui la queue temporaire
    7) la queue étant temporaire, sans émetteur ou receveur, elle disparait.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juillet 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 47
    Points : 32
    Points
    32
    Par défaut
    salut tchize ,
    est ce que vous pouvez me donner un exemple concernant les étapes suivantes
    4) après le traitement, le serveur poste un message dans le queue temporaire
    5) le client recois le message par la queue temporaire
    6) le client qui la queue temporaire
    7) la queue étant temporaire, sans émetteur ou receveur, elle disparait.

    et Merci

  8. #8
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    Citation Envoyé par zaidoune Voir le message
    salut tchize ,
    est ce que vous pouvez me donner un exemple concernant les étapes suivantes
    4) après le traitement, le serveur poste un message dans le queue temporaire
    5) le client recois le message par la queue temporaire
    6) le client qui la queue temporaire
    7) la queue étant temporaire, sans émetteur ou receveur, elle disparait.

    et Merci
    J'ai pas de code à te donner, mais pour créer la queue temporaire, il faut utiliser QueueSession.createTemporaryQueue(). Ensuite, ton serveur se connecte à cette queue comme il le ferait à presque n'importe quelle autre (sur base de son nom). Ton client appelera delete sur laTemporaryQueue quand il aura fini.

Discussions similaires

  1. Faire dormir le client en attendant la reponse du serveur
    Par metalcoyote dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 14/12/2007, 15h59
  2. [Indy] Transfert de fichiers du serveur vers le client
    Par Nicodemus dans le forum Web & réseau
    Réponses: 4
    Dernier message: 28/10/2005, 17h00
  3. Réponses: 2
    Dernier message: 01/08/2005, 16h55
  4. base de donnees sur serveur application sur client
    Par rabi dans le forum Bases de données
    Réponses: 4
    Dernier message: 12/05/2004, 21h04
  5. Serveur Linux avec clients Windows
    Par ostaquet dans le forum Installation
    Réponses: 2
    Dernier message: 01/08/2002, 15h40

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