0

我正在尝试将 json 对象转换为Facebook graph-apirestFBResponse中的类对象。Post

MyPost post = gson.fromJson(restFBResponse.toString(), MyPost.class);

其中,MyPost 类如下:

import org.codehaus.jackson.annotate.JsonWriteNullProperties;

@JsonWriteNullProperties(false)
public class MyPost extends Post {

}

类中有很多领域Post。如果actionsjson 对象中不存在这些字段中的任何一个(例如 eg ),则对象restFBResponse中的相应条目post将为空。但是在 class 中Post,actions 是由一个 arraylist 分配的,

List<Action> actions = new ArrayList<Action>();

因此,如果actions不存在restFBResponse,对象中的actions字段post将变为null。如果我尝试通过以下方式访问添加新元素的操作:

post.getActions().add(element)

它导致错误:

Exception in thread "main" java.lang.NullPointerException

ArrayList<Action>相反,我希望它保持actionsrestFBResponse. 即如果字段为 null 则避免写入null

我怎样才能做到这一点?

我尝试使用@JsonWriteNullProperties(false)所有类,但结果仍然相同,即对象中缺少的元素在restFBResponse对象中有相应的空条目post

4

0 回答 0