commons.beanutils java.lang.NumberFormatException

現象:系統做異地做雙活,A地和B地,A地是主,B地爲從。B地的代碼是從A地copy的。不過在測試B地的系統的時候報錯,從chrome瀏覽器上看到報500的錯誤。

1.分析日誌都是這個錯誤:
Caused By: java.lang.NumberFormatException
at java.math.BigDecimal.(BigDecimal.java:505)
at java.math.BigDecimal.(BigDecimal.java:728)
at org.apache.commons.beanutils.converters.NumberConverter.toNumber(NumberConverter.java:448)
at org.apache.commons.beanutils.converters.NumberConverter.convertToType(NumberConverter.java:268)
at org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:156)
at org.apache.commons.beanutils.converters.ConverterFacade.convert(ConverterFacade.java:60)
at org.apache.commons.beanutils.ConvertUtilsBean.convert(ConvertUtilsBean.java:470)
at org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:1008)
at org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:830)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:433)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1252)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at com.comtop.struts.action.ComtopActionServlet.process(ComtopActionServlet.java:88)

2.初步判斷是commons.beanutils的報錯,奇怪是代碼是一樣的。不同的機器類的加載順序不一樣,按照以前的經驗,可能有重複jar包。

3.檢查jar包,看這兩個jar包類似,解壓jar包後發現類差不多,可以判斷是同樣的jar包,只是版本不一樣。
commons.beanutils-1.8.0.jar
commons-beanutils-core-1.8.3.jar

4.先刪除commons-beanutils-core-1.8.3.jar後,系統恢復正常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章