在运行我的应用程序时出现以下错误:
javax.el.ELException: /view/doi/common/navigation.xhtml: Can't find bundle for base name messages, locale de_CH
at com.sun.faces.facelets.compiler.TextInstruction.write(TextInstruction.java:90)
at com.sun.faces.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:82)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:302)
at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:105)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
在我的faces-config中我指定了这个:
<resource-bundle>
<base-name>messages</base-name>
<var>msg</var>
</resource-bundle>
我有一个目录src \ web \ resources \ msg,文件为messages_en.propeties。
我错过了什么?
答案 0 :(得分:4)
根据例外情况,服务器正在查找的区域设置为de_CH
或失败,de
。如果那也失败了,那么它会寻找“默认”语言,但这取决于你的系统设置。所以它甚至可能永远不会去messages_en.properties
。您可以提供messages.properties
代替(没有任何区域设置指示符)作为默认值,如果这是您想要的。
此处还可阅读有关区域设置解析如何工作的完整说明:http://java.sun.com/developer/technicalArticles/Intl/ResourceBundles/