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通过:


    程序正常执行:



    

猜你喜欢

转载自blog.csdn.net/qq_40950957/article/details/81045685