大家好,我有一个简单的问题,我似乎无法使用 jersey 中的 GSON 库将 zookeeper 对象转换为 json ,反之亦然。我得到的错误是
Exception in thread "main" java.lang.StackOverflowError
at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
它一直在持续很大。从我搜索的内容来看,这似乎是嵌套太深的对象和递归的问题。这是我尝试的简单 POC
ZooKeeper zoo;
try {
zoo = new ZooKeeper("localhost:2182",5000,null);
String obj=gson.toJson(zoo, ZooKeeper.class);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
有人可以清楚地解释什么是实际问题,即使可以将 zookeeper 对象转换为 json 并将其使用(因为与之关联的所有线程)
Helenr
相关分类