我收到以下例外 org.zkoss.zk.ui.UiExceptionjava.lang.NumberFormatException. 。有人可以帮忙吗?我的堆栈如下:

Nov 08, 2013 10:43:17 AM org.zkoss.zk.ui.impl.UiEngineImpl handleError:1359
SEVERE: >>org.zkoss.zk.ui.UiException: For input string: "Enter Number"
>>java.lang.NumberFormatException: For input string: "Enter Number"
>>  at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
>>  at java.lang.Double.parseDouble(Unknown Source)
>>  at com.abcd.acd.a.web.viewmodel.FolderInfoEditViewModel.loadFolderInfoList(FolderInfoEditViewModel.java:633)
>>  at com.abcd.acd.a.web.viewmodel.FolderInfoEditViewModel.afterCompose(FolderInfoEditViewModel.java:116)
>>  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


我的Zul文件:

<zk if="${civilInfoData.infoType.equalsIgnoreCase('n') and !civilInfoData.encrypted }">
       <doublebox value="@bind(civilInfoData.folderInforecord.infoValueNumeric)" 
           hflex="1" placeholder="@load(vm.getText('FolderInfoDetail:LABEL_VALUE'))"
           mandatory="@load(civilInfoData.folderInforecord.valueRequired)"
           maxlength="10" 
           tooltiptext="@load(vm.getText('FolderInfoDetail:ENTER_NUMBER'))">
        </doublebox>
</zk>


ViewModel(folderinfoeditviewmodel.java):

 if (info.getInfoType().equalsIgnoreCase("n")) {
       if (StringUtils.isNotBlank(info.getFolderInforecord().getInfoValue()) &&
           !info.getFolderInforecord().getInfoValue().equalsIgnoreCase("null")) {

                     info.setInfoNumericValue(Double.parseDouble(
                                                 info.getFolderInforecord()
                                                     .getInfoValue()));

        }
  }

有人可以告诉我如何解决这个问题吗?

谢谢

有帮助吗?

解决方案

info.getFolderInforecord().getInfoValue() 正在返回 String 这并不能成功地解析 double, ,这就是为什么你得到一个 NumberFormatException. 。没有更多信息,我只能说。

您只检查它不是空白,也不等于“ null”。您可以通过将代码包裹在一个中,以阻止程序崩溃 try/catch 您处理的地方 NumberFormatException

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top