JSONArray.fromObject不执行且不报错问题的解决

    今天在写javaweb工程的时候需要向前台传json格式的数据,用到了json-lib-2.4-jdk15.jar等一系列包,然而却出现如下状况:

 

    CityBean是一个javaBean,我们看到,控制台只打印出了list的内容,而下面的两个却没能打印,这说明程序执行到JSON.Array.fromObject()时终止,而控制台没有报任何错误,也没有异常抛出,特别奇怪。

    下面是有关JSON导入的包:

 

    首先包的数量是正确的,而且都是我才从官网上下载好的,都是最新的版本,所以一开始我并没有将重心放到jar包上。   

    后来看到网上说List中的javaBean包含其它实体属性,打印出来是个内存值,在转换json的过程中异常,将实体属性转换成字符串重新填充即可,于是我在CityBean中重写了toString()方法:

 

 

    可惜JSONArray.fromObject()仍然不执行。。。。。。

    后来写了个test用JUnit调试了一下,终于报异常了

 

 

 

    显示找不到lang下面的类????我明明导入了lang包啊。

    据说tomcat是在它自己的lib目录下找jar包,如果jar包没有存放在tomcat的lib目录下,那么就会找不到。可是我放入了之后依旧报同样的错误。

    最后我终于发现,我导入的是commons-lang3-3.7.jar,而程序需要的是commons-lang的jar包,后来去官网看了以前的版本,果然2.x的包lang后面没有紧跟着数字,同理commons-collections4-4.2.jar也应替换到之前的版本。

 

    demo通过:

 

    程序正常执行:

 

posted @ 2018-07-14 18:19  隐秀  阅读(967)  评论(0编辑  收藏  举报