0

我已将自定义属性编辑器添加到 spring 处理程序。它适用于 jspx 页面上的属性之一,但不适用于其他属性,因为它只输出 Money 类的 toString。

public void initBinder(final HttpServletRequest request, final ServletRequestDataBinder binder) {
    binder.registerCustomEditor(Money.class, new MoneyPropertyEditor());
}

并且在具有 Money 类型的 jspx 属性中引用为:

<cat:input type="text" uiid="amount" bindpath="form.pack.amount"/>€

金钱属性编辑器看起来像

public String getAsText() {
        String textValue = null;

        if (this.getValue() != null) {
            Money money = (Money) this.getValue();

            System.out.println("getAsText money: " + money);

            textValue = String.valueOf(money.getAmount());

            System.out.println("textValue: " + textValue);
        }

        return textValue;
    }

系统输出是:

getAsText money: Money:  Amount: 0.7, AsCents: 70
textValue: 0.7

所以 - 属性编辑器工作并被调用。但是输入仍然是 toString respresentation:money: Money: Amount: 0.7, AsCents: 70而不是0.7

还应该配置什么以便使用输出自定义属性编辑器?

4

1 回答 1

0

问题解决了!实际上,在这种情况下,PropertyEditor 工作得很好,字段后来被外部 js 修改。

于 2013-07-09T08:31:41.310 回答