7
votes

Hiérarchie de configuration basée sur les annotations

Nous utilisons des classes @configuration pour faire une configuration à ressort basée sur Java. J'essaie de mettre en place une hiérarchie de annotationconfigapplicationContext (s).

Il semble fonctionner. Comme je peux avoir des haricots d'automne du contexte parent en tant que membres des haricots créés à partir de l'un des contextes de l'enfant.

Cependant, je ne parvient pas à faire des haricots d'AutoWire du contexte parent au @configuration Fichiers de classe, quelque chose qui est très pratique. Ils sont tous nuls. xxx


xxx
xxx

dans cet échantillon, ce que je reçois est parentbeantwo correctement créé pendant que parentbeanone n'est pas autonome ( null ) dans le fichier de configuration.

Qu'est-ce que je manque?


4 commentaires

Comment avez-vous mis en place la relation mère / enfant?


J'ai constaté que la mise en forme d'EnfantsConTexts fonctionne si vous déclarez ces annotationconfigaplicationContext comme haricots sur le contexte parent. Cependant, je commence à obtenir "des références circulaires?" Exceptions connexes ... Je ne peux identifier aucune référence circulaire.


Je fixe la relation en faisant Setparent (CTX) avant d'enregistrer les classes de configuration @configurables.


Plus d'infos Stackoverflow.com/Questtions / 7774295 / ...


3 Réponses :


0
votes

Je pense que le printemps veut que vous utilisiez des règles de hiérarchie java standard afin d'établir les relations entre les enfants de configuration. C'est-à-dire que la classe de configuration enfant étendra la classe de configuration parent.


2 commentaires

Ouais, mais ce n'est pas exactement la même chose. Comme la hiérarchie de la classe entière sera dans le même contexte de printemps. Dans certains cas, vous voulez un contexte enfant accédant à un contexte parent, et non l'inverse, par exemple avec des conteneurs de servlet, etc.


Y a-t-il un nouveau développement à ce sujet? Il semble comme une exigence de configuration de base.



0
votes

au printemps 3.2.2, le ressort prend en charge maintenant celui-ci avec @Contexthierarchy . http: / /docs.spring.io/spring-framework/docs/3.2.x/javadoc-api/org/springframework/test/context/contexthierarchy.html


0 commentaires

1
votes

Pour que cela fonctionne, votre contexte enfant doit importer le contexte parent, par exemple: xxx

se référer à la docum de printemps sur configuration pour plus d'infos.


0 commentaires