net.sf.json.JSONException: There is a cycle in the hierarchy!
at
net.sf.json.util.CycleDetectionStrategy$StrictCycleDetectionStrategy.handleRepeatedReferenceAsObject(CycleDetectionStrategy.java:97)
at net.sf.json.JSONObject._fromBean(JSONObject.java:857)
异常原因是:
在解析bean时,出现死循环调用。
解决的办法,过滤去掉bean中引起死循环调用的属性:
List nodes = proSrv.getProcesses();
JSONObject jsonObj = new JSONObject();
JsonConfig config = new JsonConfig();
config.setJsonPropertyFilter(new PropertyFilter() {
public boolean apply(Object source, String name, Object value) {
if (name.equals("actions") || name.equals("globables")
|| name.equals("transitions")) {
return true;
} else {
return false;
}
}
});
jsonObj.put("list", JSONArray.fromObject(nodes, config));
分享到:
相关推荐
如果需要解析的数据间存在级联关系,而互相嵌套引用,在hibernate中极容易嵌套而抛出net.sf.json.JSONException: There is a cycle in the hierarchy异常。
并且对Dao和Service进行了封装,内含.jar包,并且解决了一对多双向关联的could not initialize proxy - no Session错误,同时解决了……invoked on net.sf.json.JSONException: There is a cycle in the hierarchy!...
在编程过程中,我们可能会遇到各种异常,其中"JSONException: expect ‘:’ at 0, actual =" 是一个典型的Fastjson库在解析JSON时抛出的异常。Fastjson是阿里巴巴提供的一款高性能的JSON解析和生成库,它广泛应用于...
解决JsonException: Max allowed object depth reached while trying to export from type UnityEngine.Vector3
JSON NET For Unity 2.0.1
LitJson-develop.zip是一个包含LitJson库的开发版本,版本号为0.36.0,专为C#程序员设计,用于解析和序列化Json数据。Json(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和易于阅读、编写而...
用Java编程语言进行编码和解码JSON对象所需要的jar包。。
在Java开发过程中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,被广泛用于前后端交互。然而,解析JSON数据时可能会遇到各种报错情况。本篇将深入探讨一个具体的Java解析JSON数据时报错问题...
目录解析器 解析目录并生成其结构树。 用其他语言阅读:英语| 1.什么是目录解析器 1.1简介 Dir解析器是基于Node.js的功能强大的文件夹分析工具,可以在命令行或JavaScript代码中使用。 可以设置许多实用参数,以...
Java JSON解析库Alibaba Fastjson是一个高效且功能丰富的库,由阿里巴巴开发并广泛应用于各种Java项目。Fastjson的核心功能在于将Java对象转换成JSON格式的字符串,以及将JSON字符串反序列化为Java对象。...
标题中提到的“uncloneable object”即不可拷贝对象,这通常是因为在PHP编程中,某些对象是不允许进行拷贝的。这种特性有时候会用于防止通过拷贝操作来破坏数据的完整性或状态一致性。... 描述部分中指出,尝试使用一...
在Spring MVC框架中,JSON类型转换错误通常是由于在试图将Java对象转换为JSON格式响应时,Spring MVC找不到合适的转换器导致的。这个错误通常表现为`java.lang.IllegalArgumentException: No converter found for ...
这个库提供了几个核心类,如JSONObject、JSONArray、JSONException和JSONString,帮助开发者方便地进行JSON的解析、创建和序列化。 **JSONObject**: JSONObject是表示JSON对象的类,它由键值对组成,键总是字符串...
这里的描述提到了"JSON"、"JSONObject"、"JSONArray"和"JSONException",这通常是来自`org.json`库的API,这是一个轻量级的JSON解析库,适合简单的JSON操作。 1. JSON类:这是基础接口,提供了将JSON字符串转换为...
4. JSONException:当JSON处理过程中发生错误时抛出的异常。 5. JSONTokener:用于解析JSON字符串,将其转化为JSON对象或数组。 6. JSONParser:此类提供了一种解析JSON字符串的高级方法,但通常我们更倾向于使用...
5. JSONException: 当遇到解析错误或其它异常情况时,会抛出此异常。 在Android开发中,处理JSON通常还会使用一些第三方库,比如Gson或Jackson,它们提供了一些便捷的方法来转换JSON数据和Java对象之间的映射,极...
- JSONStringer和JSONException:辅助进行JSON序列化和异常处理。 2. Gson库解析 - Gson库允许直接将Java对象转换为JSON字符串,反之亦然。这简化了数据模型和JSON之间的转换过程。 - `Gson().toJson(object)`...
这个库的核心类包括JSONObject、JSONArray、JSONString、JSONException等,它们提供了对JSON对象的基本操作,如创建、读取、修改和序列化/反序列化。 1. JSONObject:表示一个JSON对象,由键值对组成。每个键都是一...
JsonUtil
} catch (JSONException e) { e.printStackTrace(); } } @Override public void onError(String errorMessage) { Toast.makeText(context, "请求失败:" + errorMessage, Toast.LENGTH_SHORT).show(); } })...