jsf - 覆盖primefaces messages.properties标签的正确配置是什么
问题描述
我试图PrimeFaces
messages.properties
在我的消息中覆盖标签但没有成功。
这就是我试图改变数据表标签的方法:
这是我的
faces-config.xml
:<faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd" version="2.2"> <application> <locale-config> <default-locale>it</default-locale> <supported-locale>it</supported-locale> <supported-locale>en</supported-locale> </locale-config> <resource-bundle> <base-name>i18n.messages</base-name> <var>msg</var> </resource-bundle> <resource-bundle> <base-name>i18n.primefaces</base-name> <var>messages</var> </resource-bundle> </application> </faces-config>
resources/i18n/messages.properties
包含我自己app
的应用程序标签(resources/i18n/primefaces.properties
所以在
resources/i18n/primefaces.properties
文件中我有这个内容:primefaces.datatable.SORT_ASC = Ascending primefaces.datatable.SORT_DESC = Descending
在
resources/i18n/primeface_it.properties
文件中我有这个内容:primefaces.datatable.SORT_ASC = Crescente primefaces.datatable.SORT_DESC = Decrescente
什么都没有发生,即使我切换到意大利语言环境,我仍然会看到英文翻译
SORT_ASC
和SORT_DESC
标签。
解决方案
PrimeFaces 属性的“basename”是“org.primefaces.Messages”,因此要为其添加翻译,您需要Messages_it.properties
在resources/org/primefaces
项目中添加一个。如果您还想覆盖默认的 PF,也可以Messages.properties
在其中放置一个(确保它包含每个键的副本并覆盖值)。
而且您不需要在 faces-config 中覆盖或添加资源包,因为它们已经在 PrimeFaces jar 中的 faces-config 中定义。
推荐阅读
- angular - 为什么我的应用程序中有一个随机文本箭头?
- ruby-on-rails - 发送邮件后从视图中访问“自我”(ruby on rails)
- windows - 打开 .sql 文件时的 VIM 运行命令
- javascript - 试图随机选择一个短语
- keras - Keras 中用于规范化的 Lambda 层
- node.js - 无法连接到受密码保护的 MongoDB 服务器/数据库
- c# - 如何使用 LUIS (Bot Framework) 将文本解析回特定类型?
- xml - 如何创建一个 XSLT 以基于两个 XML 文档之间的兄弟节点文本匹配来合并两个 XML 文档?
- ios - Flutter IOS 应用程序在打开时立即崩溃
- android - Azure 媒体服务颤动