JSONObject json = JSONObject.fromObject(map); 执行出现异常

这个异常让我花了好些功夫,只因为没有用对测试方法,以后大家或许会碰见类似错误,在此我把解决问题的办法记录下来,希望对大家有帮助.

在我使用struts2过程中,用到了ajax的数据交互方式,经查证,最好的处理方式就是使用json来处理数据,于是使用到了JSONObject对象,它提供了很多对字符串、键值对以及List对象集合等对象解析为JSON格式的方法,很方便又便捷,在执行过程中,我发现前台的ajax请求总是执行error方法,于是用debug跟踪了一下,发现每当程序执行到JSONObject json = JSONObject.fromObject(map);这一步的时候,系统就会自动跳转到一个异常的类中,但是不会抛出任何异常信息,此异常类为:

public InvocationTargetException(Throwable target) {
 super((Throwable)null);  // Disallow initCause
        this.target = target;
    }
 .....
}

这令我发现程序上还是有异常的,后来跟踪异常,还是没有解决,再接着,我便换了一种测试办法,使用一个main函数来测试,经过测试,报了一个名为 java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher 的异常信息,这个异常很明显,是告诉缺少类,于是就又去找了一下相关json的jar包,终于被我发现,原来系统缺少一个名为ezmorph的jar包,于是我将我本地的ezmorph-1.0.6.jar导入到系统,经过测试,没有发现异常,而且web的ajax也运行正常了,问题解决.

转载于新浪微博:JSONObject json = JSONObject.fromObject(map); 执行出现异常

你可能感兴趣的:(Java,错误及解决方法)