【发布时间】:2014-03-21 13:50:11
【问题描述】:
这段代码抛出了我:无法将给定的对象格式化为数字
private BigDecimal notional;
public String getNotional() {
System.out.println("notional:" + notional);
otherSymbols.setDecimalSeparator(',');
otherSymbols.setGroupingSeparator('.');
System.out.println("notional:" + notional);
String format = df.format(notional);
System.out.println("notional2:" + format);
if(notional!=null)
notional = new BigDecimal(df.format(notional));
return notional.toString();
}
为什么?
javax.el.ELException: /pages/emir/acknowledgedTransactions.xhtml @484,160 value="#{ackTxContractBean.firstleg.notional}":
java.lang.IllegalArgumentException: Cannot format given Object as a Number
名义上:2279713.86 名义2:2.279.713,86
【问题讨论】:
-
吸气剂绝对不应该是这样的。您应该直接返回
national未修改。 -
如果我必须显示不同的数字格式,我必须做什么?同时我需要一个 Bigdecimal 来插入数据库?
-
只需在正确的语言环境中使用
<f:convertNumber>。