Spring BigDecimal输入

时间:2015-01-30 08:40:15

标签: spring jsp spring-mvc

我有一个POJO对象,其中包含一个BigDecimal字段 sum
在控制器中,我将这个POJO对象添加为如下形式:

MyForm form = new MyForm();
model.addAttribute("command", form);

我的jsp:

<form:input path="sum" size="27"/>

在控制器中我添加了initbinder:

binder.registerCustomEditor(BigDecimal.class, new SumEditor());

我的SumEditor课程的一部分:

@Override
   public void setAsText(String text) throws IllegalArgumentException {
         setValue(parseMoney(text));
   }
   private BigDecimal parseMoney(String str) {
         try {
                 return new BigDecimal(str);
             } catch (Exception e) {
                 logger.error("error", e);
             }
         return null;
   }

但是在JSP视图中我看到(在输入字段中):| null ________ |
如何修复这个?我需要:| ___________ |

1 个答案:

答案 0 :(得分:2)

您应该简单地覆盖getText的{​​{1}}方法,让它为空值返回一个空字符串(“”):

SumEditor