我正在尝试将 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>相反,我希望它保持actions在restFBResponse. 即如果字段为 null 则避免写入null。
我怎样才能做到这一点?
我尝试使用@JsonWriteNullProperties(false)所有类,但结果仍然相同,即对象中缺少的元素在restFBResponse对象中有相应的空条目post。