JSF 本地配置不起作用

JSF Local config not working

我之前在 JSF 应用程序中配置了 Locale,但由于某种原因,我不断收到以下信息:

java.util.MissingResourceException: Can't find bundle for base name com.cleanup.bundle.messages, locale es

面孔-config.xml

<application>

    <resource-bundle>
        <base-name>com.cleanup.bundle.messages</base-name>
        <var>msg</var>
    </resource-bundle>

    <locale-config> 
        <default-locale>es</default-locale>
        <supported-locale>en</supported-locale>
    </locale-config>

</application>

.properties 个文件:

出于某种原因我无法让它工作,请不要标记为重复,因为我已经用这些进行了验证:

  1. this
  2. and this
  3. also this
  4. etc ...

我的配置与我过去使用的完全相同,但是..没有任何效果,我什至尝试将本地设置为默认语言环境:

<f:view locale="#{languageBean.locale}">

像这样的豆子:

@Named(value = "languageBean")
@SessionScoped
public class LanguageBean implements Serializable {

    private Locale locale;

    @PostConstruct
    public void init() {
        locale = FacesContext.getCurrentInstance().getApplication().getDefaultLocale();
    }

并且出于某种原因得到相同的 MissingResourceException

非常感谢任何帮助,谢谢。

您检查过您的 war 文件了吗?可能是 Maven 构建没有将您的属性文件放在所需位置,因为它从资源文件夹中获取属性,因此请尝试将包结构放在资源文件夹中并再次构建。Maven 文件夹结构是 来源---主要 |-java |-资源 |- 网络应用

Select "Files" 选项卡,并将文件放入文件夹

src -> main -> resources(如果不存在则创建它)。

返回项目选项卡,它们应该出现在

"Other sources" -> src/main/resources -> 默认包。

文件选项卡:

项目选项卡:

我还会删除包名称(或者说,我还没有尝试过)。