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

Spring Java Discussion :

Problème avec la JMX console (configuration MBean)


Sujet :

Spring Java

  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 173
    Par défaut Problème avec la JMX console (configuration MBean)
    Bonjour,
    je suis en train de configurer certains de mes beans pour qu'ils soient accessible via la JMX Console.
    Quand j'utilise le MBeanExporter de cette façon (simple):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <beans>
     
      <bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
     
        <property name="beans">
          <map>
            <entry key="bean:name=countryMessages" value-ref="countryMessageSource"/>
          </map>
        </property>
     
      </bean>
    </beans>
    je réussi à voir le bean countryMessages dans la console JMX avec toutes ses méthodes publiques..

    Vu que je veux limiter l'accès qu'à certaines de ces méthodes, j'ai voulu tester l'exportation avec les annotations:

    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
     
      <bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
     
        <property name="beans">
          <map>
            <entry key="bean:name=countryMessages" value-ref="countryMessageSource"/>
          </map>
        </property>
     
        <property name="assembler" ref="assembler"/>
     
      </bean>
     
     
      <bean id="assembler" class="org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler">
        <property name="attributeSource" ref="attributeSource"/>
      </bean>
     
        <!-- when using annotations -->
      <bean id="attributeSource"
            class="org.springframework.jmx.export.annotation.AnnotationJmxAttributeSource"/>
    et sur les méthodes que je voulais afficher j'ai inséré cette annotation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      @ManagedAttribute(description="Click here if you want to refresh the country messages from the database")
    public void refresh() {
      ...
    }
    malheureusement rien ne s'affiche.. quelqu'un voit ou est le problème?

    Merci d'avance
    Fred

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Par défaut
    Salut,

    Tu as mit l'annotation @ManagedResource à ta classe (CountryMessage je suppose) ?

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 173
    Par défaut
    Oui, comme dans l'exemple de la doc..

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 173
    Par défaut
    J'ai trouvé un petit bug dans mon SAR, maintenant j'ai un autre problème.. il ne réussi pas à trouver mon bean avec le autodetect..

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Par défaut
    Montres ton fichier XML stp car là ...

  6. #6
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 173
    Par défaut
    Salut!
    Voici mon fichier de configuration:
    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
     
      <bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
        <!--
        when the autodetect will work it will allow to autodetect each MBean properly configured
        see chapt. 19.4 of spring doc 1.2.8 for change the names of the objects
        <property name="autodetect" value="true"/>-->
     
        <!-- map of bean that we want to allow access, the key is the name showed in the JMX console -->
        <property name="beans">
          <map>
            <entry key="evega.beans:name=CountryMessagesDatabase" value-ref="countryMessageSource"/>
            <entry key="evega.beans:name=FIHShortMessagesDatabase" value-ref="fihShortMessageSource"/>
            <entry key="evega.beans:name=FIHMessagesDatabase" value-ref="fihMessageSource"/>
            <entry key="evega.beans:name=CurrencyDescriptionMessagesDatabase" value-ref="currencyDescriptionMessageSource"/>
            <entry key="evega.beans:name=RatingTypeDescriptionMessagesDatabase" value-ref="ratingTypeDescriptionMessageSource"/>
            <entry key="evega.beans:name=TKEconomicalSectorDescriptionMessagesDatabase" value-ref="tkEconomicalSectorDescriptionMessageSource"/>
            <entry key="evega.beans:name=MSCIEconomicalSectorDescriptionMessagesDatabase" value-ref="msciEconomicalSectorDescriptionMessageSource"/>
          </map>
        </property>
     
         <property name="assembler" ref="assembler"/>
      </bean>
     
      <!-- metadata needed for a correct behavior of the exporter -->
      <bean id="assembler" class="org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler">
        <property name="attributeSource" ref="attributeSource"/>
      </bean>
     
      <!--  when using annotations -->
      <bean id="attributeSource"
            class="org.springframework.jmx.export.annotation.AnnotationJmxAttributeSource"/>
    je configure mes beans explicitement, j'aimerais le faire avec le autodetect, mais il ne les reconnaît pas (en mettant l'annotations devant le nom de la calsse).. je sais pas pourquoi

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Par défaut
    Il me semble que Spring va détecter un bean à exporter si celui-ci est déclaré quelque part dans ton fichier XML.
    Ce qui serait assez logique car il ne peut pas deviner qu'une classe utilise l'annotation @ManagedResource. Ou alors il faudrait qu'il les parcours toutes ... Non ?

  8. #8
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 173
    Par défaut
    Justement, la propriété autodetect, comme l'indique son nom, pourraît éviter cette configuration supplémentaire.. seulement ça marche pas.

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Par défaut
    Oui, justement, mais le bean doit être déjà connu de Spring.
    Regarde la doc.

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/03/2012, 02h19
  2. Réponses: 18
    Dernier message: 20/10/2011, 12h41
  3. Problème avec l'assistant de configuration de TableAdapter
    Par Kyaan dans le forum Visual Studio
    Réponses: 1
    Dernier message: 11/11/2008, 02h24
  4. Réponses: 0
    Dernier message: 12/08/2008, 13h59
  5. Windows XP : Problème avec le panneau de configuration
    Par pcvesoul dans le forum Sécurité
    Réponses: 5
    Dernier message: 28/03/2008, 17h17

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