Bonjour,
Depuis un moment, j'utilise un bean messageSource de classe ResourceBundleMessageSource pour l'internationalisation de Spring. Ca marchait très bien, mais maintenant, j'ai voulu étendre cette classe pour ajouter des fonctionnalités :
Et j'ai modifié la description XML du bean :
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 public class JThequeResourceBundle extends ResourceBundleMessageSource implements EditableResourceBundle { private String coreBaseName; private final List<String> baseNames = new ArrayList<String>(10); @PostConstruct public void init(){ addBaseName(coreBaseName); addBaseName(Managers.getCore().getApplication().getBaseName()); refresh(); } @Override public void addBaseName(String baseName){ baseNames.add(baseName); } @Override public void removeBaseName(String baseName){ baseNames.remove(baseName); } @Override public void refresh(){ setBasenames(baseNames.toArray(new String[baseNames.size()])); } public void setCoreBaseName(String coreBaseName) { this.coreBaseName = coreBaseName; } }
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <bean id="messageSource" class="org.jtheque.core.managers.language.JThequeResourceBundle"> <property name="coreBaseName" value="${coreBaseName}" /> </bean>
Et depuis, quand je récupére le bean "messageSource", j'ai un objet de type DelegatingMessageSource et je suis obligé de récupérer le parentMessageSource.
Est-ce qu'il y a un moyen pour éviter de passer par ce DelegatingMessageSource ou est-ce que je suis obligé de passer par lui ?
Merci
Partager