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 :

Injection d'une dépendance initialisée avec passage dynamique d'arguments


Sujet :

Spring Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Injection d'une dépendance initialisée avec passage dynamique d'arguments
    Bonjour,

    Je souhaite d'abord préciser que je découvre tout juste Spring, mais j'ai pris le temps de parcourir la FAQ de ce site et surtout la documentation de référence. Malgré cela, je n'ai pas trouvé d'exemple correspondant à ce que je souhaite réaliser.

    L'idée est d'injecter dans un bean de type service une propriété de type MBeanServerConnection. Je souhaite donc utiliser un bean factory avec une méthode statique qui prendrait en argument les paramètres requis (hostname, port...), et qui retournerait la connexion concernée. Très classique en somme, mais je ne parviens pas à comprendre comment fournir les paramètres dynamiquement à partir du code appelant (la couche service). Tous les exemples de définitions de beans trouvés dans la documentation utilisent des valeurs de propriétés fixées à l'initialisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <property name="name" value="whatever" />
    Dans mon cas, ces valeurs seraient fournies par l'utilisateur via un formulaire.

    Ça m'a tout l'air d'être un cas de figure assez classique ce qui doit vouloir dire que j'ai probablement loupé quelque chose, mais si je pouvais obtenir des éclaircissements...

    Merci beaucoup

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Bon, je pense ne pas avoir été assez clair alors je me permets de poster l'exemple de code qui me paraît le plus cohérent. Pour rappel, je cherche à créer un bean de service et j'aimerais initialiser lors de la création du bean une connection JMX de type MBeanServerConnection.

    Fichier de configuration Spring :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <bean id="wlsConnectionFactory" class="net.whatever.asdashboard.WlsConnectionFactory" />
     
    <bean id="wlsService" class="net.whatever.asdashboard.WlsService" />
    ConnectionFactory.java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    import javax.management.MBeanServerConnection;
     
    public interface ConnectionFactory {
     
    	public MBeanServerConnection createInstance(String hostname, Integer port,
    			String user, String password);
     
    }
    WlsService.java :
    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
     
    import javax.management.MBeanServerConnection;
     
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.beans.factory.annotation.Qualifier;
     
    public class WlsService {
     
    	@Autowired
    	@Qualifier("wlsConnectionFactory")
    	private ConnectionFactory factory;
     
    	private MBeanServerConnection connection;
     
    	public WlsService() {
     
    	}
     
    	public WlsService(String hostname, Integer port,
    			String user, String password) {
    		this.connection = factory.createInstance(hostname, port, user, password);
    	}
     
    }
    Ça vous paraît être une bonne approche ? Tous vos conseils seront les bienvenus

Discussions similaires

  1. Ouverture d'une seconde fenêtre avec passage de variable
    Par kawther dans le forum Interfaces Graphiques
    Réponses: 7
    Dernier message: 06/11/2012, 08h50
  2. ouverture d'une pop-pup avec passage d'un paramètre
    Par macalos dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/02/2011, 04h37
  3. Réponses: 4
    Dernier message: 21/03/2008, 17h40
  4. Réponses: 3
    Dernier message: 20/07/2007, 08h58

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