我想整合VelocityTools.ResourceTool本地化速度模板,但无论我用作“捆绑”参数我不断收到以下错误:
java.util.MissingResourceException: Can't find bundle for base name WEB-INF.conf.resources.ss_messages, locale en_US
我正在使用VelocityTools v1.4。 这是我的configuration:
工具configuration/WEB-INF/conf/misc/velocity/toolbox.xml
<tool> <key>test</key> <scope>request</scope> <class>org.apache.velocity.tools.generic.ResourceTool</class> <parameter name="bundles" value="WEB-INF.conf.resources.ss_messages"/> <parameter name="locale" value="en_US"/> </tool>
捆绑:
\WEB-INF\conf\resources\ss_messages_bg_BG.properties \WEB-INF\conf\resources\ss_messages_en_US.properties
这两个文件有简单的内容:
full.name=\u0421\u0442\ (for bg_BG.properties) full.name=Joe Blow (for en_US.properties)
我的速度模板有这样的代码:
HELLO $test.full.name
我为上面的name="bundles"
尝试了不同的值,即/WEB-INF/conf/resources/ss_messages
和./conf/resources/ss_messages
(去根目录然后引用ss_messages包)。
此外,我试图把我的ss_messages.properties捆绑文件在根目录中的resources
文件夹中,而不是使用value="resources"
,但似乎没有工作…仍然得到相同的错误信息。
我究竟做错了什么?! 是不是在toolbox.xml
文件不在根? 到目前为止,我已经在我的应用程序中成功使用了toolbox.xml
。
资源应该在类路径上,并配置为这样。
请参阅ResourceTool
API文档 。