JSF FacesMessage本地化

El_*_*l_w 9 jsf localization

我现在的问题是我无法使用FacesMessage进行本地化

我试过了:

try {
    ResourceBundle bundle = ResourceBundle.getBundle("translations", context.getViewRoot().getLocale());
    text = bundle.getString("loginFail");
} catch (Exception e) {
    System.out.println("EXCEPTION: " + e);
}

FacesContext.getCurrentInstance().addMessage("", new FacesMessage(text));
Run Code Online (Sandbox Code Playgroud)

但抛出以下异常

java.util.MissingResourceException: Can't find bundle for base name translations, locale cs
Run Code Online (Sandbox Code Playgroud)

faces-config.xml包含:

<application>
    <locale-config>
        <default-locale>cs</default-locale>
        <supported-locale>en</supported-locale>
    </locale-config>
    <resource-bundle>
        <base-name>tr.translations</base-name>
        <var>txt</var>
    </resource-bundle>
    <message-bundle>
        tr.translations
    </message-bundle>
</application>
Run Code Online (Sandbox Code Playgroud)

文件translations_cs.propertiestranslations_en.properties在tr包中,位置绝对可以.

你知道如何让它运作吗?提前致谢

Bal*_*usC 7

基本名称getBundle()应该tr.translations与您完全一样faces-config.xml.