【发布时间】:2009-04-08 03:47:12
【问题描述】:
为了以编程方式刷新资源包缓存,我使用了 Spring 的 ReloadableResourceBundleMessageSource。我无法将它注入到我想要调用 clearCache() 方法的 bean 中。
我不得不采取以下措施:
private ReloadableResourceBundleMessageSource messageSource;
@Autowired
public void setMessageSource(MessageSource messageSource) {
this.messageSource = (ReloadableResourceBundleMessageSource((DelegatingMessageSource)messageSource).getParentMessageSource();
}
这可行,但必须有更好的方法。消息资源定义如下:
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames" >
<list>
<value>WEB-INF/content/Content</value>
</list>
</property>
</bean>
我不明白为什么 Spring 会注入 DelegatingMessageSource 类型的消息源。
【问题讨论】:
标签: spring