java.util.MissingResourceException: Can't find bundle for base name xxx.i18n.base, locale en_US
私は現在、Faceletsを使用してi18nを実装しています。3つの.propertiesファイルがあります。
- xxx.i18n.base.properties
- xxx.i18n.base_en_US.properties
- xxx.i18n.base_nl_NL.properties
faces-config.xml
<?xml version='1.0' encoding='UTF-8'?>
<faces-config version="2.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
<application>
<locale-config>
<default-locale>nl_NL</default-locale>
<supported-locale>en_US</supported-locale>
</locale-config>
<resource-bundle>
<base-name>xxx.i18n.base</base-name>
<var>base</var>
</resource-bundle>
</application>
</faces-config>
エラーが示したように、en_USファイルを見つけるのに問題がありますが、nl_NLにロケールを設定すると、それも見つかりません。最後に、ロケールをde_DEのようなものにすると、このロケールがサポートされていると定義されていなくても、de_DEに対してこの結果が得られます。
次の構文を使用して、.propertiesファイルから値を取得しています
#{base['msg']}
私のアプリケーションがこれらのロケールファイルを見つけられないように見える理由について誰かが知っていますか?