有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Jackson使用空字符串而不是对象反序列化JSON字符串

我无法反序列化从外部api收到的响应

通常,API会返回以下JSON:

{ 
 "RootObj": {
   "InnerObj" : [
           {"Elem1": "Val1"},
       ]
    }
}

解析得很好。但是,当API找不到什么东西时,它会返回以下JSON:

{ 
 "RootObj": ""
}

但是有了这个JSON,Jackson就不能反序列化它了。。在使用反序列化选项时,它也不能接受\u EMPTY\u STRING\u作为\u NULL\u对象

JSON确实会转换为:

{ 
 "RootObj": null
}

然而,由于空指针,现在Jackson无法实例化我的POJO。我希望它创建rootObj类,InnerObj设置为null

我尝试过各种各样的策略,比如@jsonsetter等等,但我没有成功。有人知道如何解决这个问题吗?最好使用objectmapper设置


共 (0) 个答案