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

如何修改OpenXava中MONEY stereotype的货币符号 南非区域显示异常

问题诱因
  • OpenXava的本地化优先级高于操作系统、浏览器的区域设置,默认优先读取应用内部的硬编码或配置文件设定,不会自动继承系统/浏览器偏好
  • 项目application.properties配置文件中默认区域或默认货币配置错误,比如指定了默认货币为USD、默认区域为美国/英国等非南非区域
  • 实体类中货币字段的注解硬编码了美元货币类型或格式化规则,强制覆盖全局配置显示$符号
  • 若使用多租户版本OpenXava,租户级别的区域、货币配置未修改,也会覆盖全局设置
解决方法
  • 第一步:修改应用全局配置

找到项目路径下src/main/resources/application.properties文件,添加或修改如下配置:

# 设置默认区域为南非英语
defaultLocale=en_ZA
# 强制指定默认货币为南非兰特(货币代码ZAR)
defaultCurrency=ZAR
  • 第二步:检查实体类字段注解
    检查所有货币类型的实体字段,删除硬编码的美元相关配置:
    • 移除类似@Money(currency="USD")的指定货币参数,保留纯@Money注解即可适配全局配置
    • 移除类似@NumberFormat(pattern = "$#.00")的硬编码美元符号格式化规则
  • 第三步:重启验证
    修改完成后清空项目编译缓存,重启OpenXava应用,再清除浏览器缓存后访问即可生效。
  • 多租户场景额外操作:进入租户管理后台,将对应用户所属租户的区域、货币配置分别修改为南非、ZAR即可。

内容的提问来源于stack exchange,提问作者javierpaniza

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 12:36:03