Surcharger ResourceBundleMessageSource et récupérer le bean messageSource
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 :
Code:
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;
}
} |
Et j'ai modifié la description XML du bean :
Code:
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