You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PrimeFaces PickList按钮标签多语言自定义方法咨询

修改PrimeFaces 14 PickList按钮标签的方案

PrimeFaces 14移除了PickList的addLabel、addAllLabel等旧属性,要修改按钮标签,需通过覆盖PrimeFaces默认国际化资源包实现,具体步骤如下:

1. 确认默认消息键

PickList的按钮文本对应PrimeFaces内置资源包org.primefaces.component中的以下键:

  • picklist.moveToTarget:默认文本"Move to Target"
  • picklist.moveAllToTarget:默认文本"Move all to Target"
  • picklist.moveToSource:默认文本"Move to Source"
  • picklist.moveAllToSource:默认文本"Move all to Source"

2. 创建自定义资源包

在项目类路径下创建多语言属性文件,覆盖上述键的文本:

  • 英文资源文件(messages.properties)示例:
    picklist.moveToTarget=Add to Target
    picklist.moveAllToTarget=Add All to Target
    picklist.moveToSource=Back to Source
    picklist.moveAllToSource=Back All to Source
    
  • 中文资源文件(messages_zh_CN.properties)示例:
    picklist.moveToTarget=添加到目标
    picklist.moveAllToTarget=全部添加到目标
    picklist.moveToSource=移回源列表
    picklist.moveAllToSource=全部移回源列表
    
    注:资源文件路径需对应后续配置的base-name,比如放在src/main/resources/com/yourproject下,base-name就是com.yourproject.messages。

3. 配置资源包优先级

在faces-config.xml中添加配置,让自定义资源包优先于PrimeFaces默认包加载:

<application>
    <!-- 自定义资源包,放在前面以覆盖默认值 -->
    <resource-bundle>
        <base-name>com.yourproject.messages</base-name>
        <var>msg</var>
    </resource-bundle>
    <!-- 保留PrimeFaces默认资源包,保证其他组件消息正常 -->
    <resource-bundle>
        <base-name>org.primefaces.component</base-name>
        <var>primefaces</var>
    </resource-bundle>
</application>

4. 验证效果

重启应用后,PickList的按钮文本会自动加载自定义资源包中的内容,根据当前语言环境切换对应多语言文本。

内容的提问来源于stack exchange,提问作者berger-devel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 22:41:11