现象:
页面报错NumberFormatException: For input string:
分析过程:
Long.valueOf(String)方法报错,页面传过来的值是"1,001",因为多了个逗号,导致错误。
想想数据库里的数据类型是NUMBER(18),值是“1001”,怎么会变成"1,001"呢?
原来在页面上使用<ofbiz:entityfield>标签取值时,对象中的数据为Long型。提交后导致了异常。
解决方案:
改用<ofbiz:inputvalue>取得数据,在页面上自动转换为String类型的值,即“1001”。