Spring和JSTL的多个ResourceBundle

时间:2012-08-13 11:24:39

标签: spring jstl tiles resourcebundle

这是我的问题:我想组织我的资源包文件,以便将消息放在一个文件中,将标签放在另一个文件中。为此我创建了两个.properties文件,我在spring配置文件中声明了这些文件。实际的声明如下:

<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    <property name="basenames">
        <array>
            <value>strings.gui</value>
            <value>strings.messages</value>
        </array>
    </property>
</bean>

文件夹布局如下:

/ WEB-INF / classes / ro / ** - 源文件

/ WEB-INF / classes / strings / * - i18n文件(gui_ro.properties和messages_ro.properties及其_en版本)

当我从 gui_xx.properties 显示标签时,一切正常,但无法显示来自 messages_xx.properties 文件的消息。服务器控制台中的错误消息是

ResourceBundle [strings.messages] not found for MessageSource: Can't find bundle for base name strings.messages, locale ro

我正在使用JSTL和TilesView,无论我使用什么标记显示文本,都会出现问题 - fmt:message key = ... spring:message code = ...

有人可以帮忙吗?

非常感谢你,祝你有个美好的一天。

1 个答案:

答案 0 :(得分:3)

我认为正确的基名应该是:

    <value>classpath:/ro/gui</value>
    <value>classpath:/strings/messages</value>

你可以试试这些基本名值。