如何将整个文件夹添加到Velocity并将内部文件用作资源包?
目前在我的velocity.xml中,我有这段代码:
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="parentMessageSource">
<ref bean="globMessageSource"/>
</property>
<property name="basenames">
<list>
<value>classpath:/WEB-INF/i18n</value>
<value>/WEB-INF/templates/velocity/my_vm_template</value>
</list>
</bean>
我需要将i18n文件夹添加到类路径中,以便toolbox.xml中的VelocityTools 1.4版可以看到它包含的文件:
<tool>
<key>test</key>
<scope>request</scope>
<class>org.apache.velocity.tools.generic.ResourceTool</class>
<parameter name="bundles" value="i18n.ss_messages"/>
<parameter name="locale" value="en_US"/>
</tool>
代码给我一条错误消息:“java.util.MissingResourceException:找不到基本名称的包i18n.ss_messages,locale en_US”
有关很抱歉,如果这是一个愚蠢的问题,但我找不到任何地方描述如何将整个文件夹添加到类路径并作为捆绑包提供,以便它可以支持Velocity模板本地化。
重要提示!! 如果我将ss_messages_bg_BG.properties和ss_messages_en_US.properties文件放在/ WEB-INF / classes / i18n中,那么它可以正常工作,但我想将它们放在不同的文件夹中在/ WEB-INF / templates / i18n中。我该怎么做?
答案 0 :(得分:0)
<resource>
<!-- Velocity requires to be in classpath -->
<directory>src/main/webapp/WEB-INF/i8n</directory>
<filtering>true</filtering>
</resource>