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 :

Démarrage conditionné d'un Message-Driven Bean


Sujet :

Java EE

  1. #1
    Membre du Club
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2007
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 36
    Points : 59
    Points
    59
    Par défaut Démarrage conditionné d'un Message-Driven Bean
    Bonjour à tous.

    Mon problème est le suivant : mon application compte une série de MDB, et chaque version de l'application en production ne doit en utiliser que certains. Les MDB activés seront a priori paramétrés dans un fichier de configuration extérieur à l'EAR, de manière à ce que les gens de l'exploitation puissent le modifier.

    J'ai cherché si l'on pouvait arrêter/redémarrer indépendamment chaque MDB d'un EAR dans la console d'administration Websphere (6.1), mais je n'ai pas trouvé. Alternativement, la solution serait la suivante : demander l'arrêt immédiat du MDB depuis le code lors de l'initialisation (ejbCreate) selon ce que dit le fichier de config. La seule solution que j'ai trouvée pour l'instant est le lancement d'une EJBException, mais c'est particulièrement cochon : Websphere tente de relancer plusieurs fois l'EJB, et ça me pourrit les logs avec des messages d'erreur. Est-ce que quelqu'un connaitrait une solution ? J'ai farfouillé dans le MessageDrivenContext à la recherche d'une solution, mais sans succès.

    Je précise que nous sommes en EJB 2.1 sur Websphere 6.1. Je sais qu'il existe en EJB3 une annotation @MessageDriven avec comme paramètre possible activationConfig, est-ce qu'il existe un équivalent en EJB 2.1 ?

    Merci d'avance pour toute information, je suis un peu coincé là...

  2. #2
    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,

    de bon matin et du tacotac, en supposant que tu bosses en CMT je vois cette solution améliorable:

    - Utiliser jmx pour ton fichier de conf modifiable en live (cf javax.management.DynamicMBean)

    - le rendre accessible à tes MDB de la manière que tu souhaites (genre un contexte, un singleton)

    - dans tes MDB, checker à la réception du message si le MDB doit être actif (via l'objet du point 2).
    Si oui tu traites normalement.
    Si non tu temporise, tu fais un setRollbackOnly sur le MessageDrivenContext (moins cochon que l'EJB exception) et tu sors de ta méthode onMessage().

    Attention le message n'est pas consommé, tu vas boucler sur la méthode onMessage, d'où l'importance de la tempo.

    Banzai

  3. #3
    Membre du Club
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2007
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 36
    Points : 59
    Points
    59
    Par défaut
    Bonjour et merci pour ta réponse. La solution de filtrer à l'entrée de onMessage ne convient pas non plus, c'est la première possibilité qu'on a proposé au client mais il n'en veut pas. Il demande que les MDB "inactifs" soient vraiment arrêtés.

Discussions similaires

  1. surveillance d'un message driven bean
    Par ludovic.marlats dans le forum Wildfly/JBoss
    Réponses: 0
    Dernier message: 28/04/2011, 14h34
  2. Message Driven Bean
    Par jockhip12 dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 1
    Dernier message: 17/04/2011, 20h05
  3. [EJB MDB] Envoi de mail message-driven bean
    Par totofe dans le forum Java EE
    Réponses: 2
    Dernier message: 30/10/2009, 15h56
  4. JBoss 5.0, Eclipse, Message Driven Bean - Fichier jboss.xml
    Par GrooveRage dans le forum Wildfly/JBoss
    Réponses: 15
    Dernier message: 09/02/2009, 18h55
  5. JBoss et Message Driven Bean - ConnectionFactory
    Par GrooveRage dans le forum Wildfly/JBoss
    Réponses: 11
    Dernier message: 04/02/2009, 18h26

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