`
Freedomchx
  • 浏览: 5512 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

net.sf.json.JSONException: java.lang.reflect.InvocationTargetException

    博客分类:
  • json
阅读更多

        json-lib将对象转化为json格式的数据时抛出net.sf.json.JSONException: va.lang.reflect.InvocationTargetException异常一般有两种情况:

        1、hibernate的延时加载

       解决方法:

       

JsonConfig jsonConfig = new JsonConfig();  
 
cfg.setExcludes(new String[]{"handler","hibernateLazyInitializer"}); 

      2、日期格式问题

      解决方法:

jsonConfig.registerJsonValueProcessor(Date.class,new JsonDateValueProcessor());

    JsonDateValueProcessor.java

    

package com.gdin.anta.util;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;

public class JsonDateValueProcessor implements JsonValueProcessor {

	 /**
     * datePattern
     */
    private String datePattern = "yyyy-MM-dd";

    /**
     * JsonDateValueProcessor
     */
    public JsonDateValueProcessor() {
        super();
    }

    /**
     * @param format
     */
    public JsonDateValueProcessor(String format) {
        super();
        this.datePattern = format;
    }

    /**
     * @param value
     * @param jsonConfig
     * @return Object
     */
    public Object processArrayValue(Object value, JsonConfig jsonConfig) {
        return process(value);
    }

    /**
     * @param key
     * @param value
     * @param jsonConfig
     * @return Object
     */
    public Object processObjectValue(String key, Object value,
            JsonConfig jsonConfig) {
        return process(value);
    }

    /**
     * process
     * @param value
     * @return
     */
    private Object process(Object value) {
        try {
            if (value instanceof Date) {
                SimpleDateFormat sdf = new SimpleDateFormat(datePattern,
                        Locale.UK);
                return sdf.format((Date) value);
            }
            return value == null ? "" : value.toString();
        } catch (Exception e) {
            return "";
        }

    }

    /**
     * @return the datePattern
     */
    public String getDatePattern() {
        return datePattern;
    }

    /**
     * @param pDatePattern the datePattern to set
     */
    public void setDatePattern(String pDatePattern) {
        datePattern = pDatePattern;
    }


}

 

 

分享到:
评论

相关推荐

    用于java对象与json对象间的相互转换(net.sf.json.JSONObject)

    `net.sf.json.JSONObject`是开源库Apache Commons的一个组件,提供了Java对象与JSON对象之间的转换功能。下面将详细阐述如何使用`JSONObject`进行JSON操作。 ### 1. 解析JSON字符串 当你从服务器获取或从文件读取...

    net.sf.json.JSONObject相关jar包.zip

    标题 "net.sf.json.JSONObject相关jar包.zip" 指的是一个包含了与net.sf.json.JSONObject类库相关的Java档案(JAR)文件的压缩包。这个类库是开源项目JSON.org的一部分,用于在Java应用程序中处理JSON(JavaScript ...

    net.sf.json jar包

    7. **错误处理**:当解析JSON字符串或生成JSON对象时,如果遇到问题,`net.sf.json`会抛出异常,如`JSONException`,帮助开发者定位并解决问题。 总之,`net.sf.json`是一个强大的Java JSON处理库,它提供了一整套...

    JSONException:com.alibaba.fastjson.JSONException: expect ‘:’ at 0, actual = 已解决

    Fastjson是阿里巴巴提供的一款高性能的JSON解析和生成库,它广泛应用于Java开发中。这个错误表明在尝试将一个对象转换为JSON格式时遇到了问题,具体来说,它表示在JSON对象的起始位置期望找到一个冒号(:),但实际...

    Java下的json解析工具包:org.json.jar包

    在Java开发中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,被广泛用于服务器与客户端之间的数据传输。为了方便Java开发者处理JSON数据,出现了各种JSON库,其中`org.json.jar`就是一个非常...

    json.jar.zip_JSON_JSON java_json包

    使用这个库,开发者可以轻松地在Java应用中处理JSON数据,无论是解析JSON字符串成Java对象,还是将Java对象转换为JSON格式,都能高效便捷地完成。在实际开发中,理解并熟练掌握JSON的语法以及如何利用`json.jar`进行...

    json lib net.sf.json使用的所有jar包

    在Java世界中,`net.sf.json`库是一个流行的JSON处理库,它提供了方便的API来解析、生成、操作JSON对象。这个库特别适用于那些需要快速实现JSON功能的项目。 `net.sf.json`库包括多个jar包,这些jar包包含了处理...

    org.json.jar工具包下载(可用)

    `org.json`是Java平台上的一个开源库,它提供了一系列API,方便开发者对JSON进行解析、创建和操作。这个资源包`org.json.jar`正是这个库的实现,它包含了一系列的类和方法,使得在Java程序中处理JSON变得简单。 `...

    org.json.JSONObject引用依赖包

    在Java开发中,`org.json.JSONObject` 是一个广泛使用的库,用于处理JSON(JavaScript Object Notation)数据。这个库提供了一系列方法,使得开发者能够轻松地将JSON字符串转换为Java对象,反之亦然。`org.json....

    json.jar与org.json.jar包

    2. `json-lib-2.4-jdk15.jar`:这是一个基于Net.sf.json的库,适用于多种Java环境,包括JDK1.5。它提供了与json.jar和org.json.jar类似的功能,同时也支持其他数据源,如DOM、SAX和Hibernate。 3. `json-path-0.8.1...

    json-lib出现There is a cycle in the hierarchy解决办法

    如果需要解析的数据间存在级联关系,而互相嵌套引用,在hibernate中极容易嵌套而抛出net.sf.json.JSONException: There is a cycle in the hierarchy异常。

    org.json最新版本jar包(2017.10.18)

    标题中的"org.json最新版本jar包(2017.10.18)"指的是一个特定版本的Java开发库,用于处理JSON(JavaScript Object Notation)数据格式。JSON是一种轻量级的数据交换格式,广泛应用于Web服务和客户端应用程序之间...

    org.json.jar包

    `org.json.jar` 包是Java开发中广泛使用的开源库,主要用于处理JSON(JavaScript Object Notation)数据。JSON是一种轻量级的数据交换格式,因其简洁、易于读写和解析的特性,被广泛应用在Web服务和应用程序之间进行...

    org.json的依赖包

    标题中的“org.json的依赖包”指的是一个与Java开发相关的依赖包,主要包含了处理JSON(JavaScript Object Notation)数据的类库。JSON是一种轻量级的数据交换格式,被广泛用于Web服务和应用程序之间的数据传输。org...

    org.json.JSONObject 包下载

    `org.json.JSONObject`是Java编程语言中用于处理JSON(JavaScript Object Notation)数据的一个轻量级库。这个库由Mozilla Public License提供,广泛应用于需要在Java应用中进行JSON解析、生成和操作的场景。JSON是...

    org.json.JSONObject jar包

    org.json.JSONObject的6个jar包 commons-beanutils;commons-collections;commons-lang;commons-logging;ezmorph;json-lib

    org.json Jar包

    `org.json` Jar包是Java开发中常用的JSON处理库,由`org.json`组织提供,主要用于解析、生成和操作JSON(JavaScript Object Notation)数据。JSON是一种轻量级的数据交换格式,广泛应用于Web服务和应用程序之间的...

    json-lib-2.2.3帮助api

    - `net.sf.json.JSONSerializer`和`net.sf.json.JSONDeserializer`:这两个类分别用于将Java对象序列化为JSON和将JSON反序列化为Java对象。 2. **转换方法**: - `toJSON()`:将Java对象转换为JSON对象,如`...

Global site tag (gtag.js) - Google Analytics