【问题标题】:How to extend a converter in JSF 1.2如何在 JSF 1.2 中扩展转换器
【发布时间】:2013-01-28 14:58:11
【问题描述】:

我不喜欢 f:convertNumber 显示 NaN ("\ufffd") 和两个无穷大 ("\u221e") 的方式。

有没有办法扩展开箱即用的转换器以注入我自己的显示逻辑?谢谢。

【问题讨论】:

标签: java jsf jsf-1.2


【解决方案1】:

为此:

  1. 创建一个扩展 NumberConverter 的类。
  2. 通过显式处理您的特殊值来覆盖getAsString 方法,并为所有其他值推迟到super。伪代码:

    getAsString(FacesContext ctx, UIComponent component, Object value) {
        if (value is NaN) {
            return your-own-NaN-string;
        }
    
        if (value is infinity) {
            return your-own-infinity-string;
        }
    
        return super.getAsNumber(ctx, component, value);
    }
    
  3. 将该类注册为转换器并使用它来代替f:convertNumber

【讨论】:

  • 嗯,我希望有一个更好的解决方案,因为现在我还必须处理格式化和设置正确的语言环境。但我想仍然值得接受你的回答。 :) 谢谢。
  • 如果您找到更好的解决方案,我一定很高兴知道。
猜你喜欢
  • 2012-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多