Используя Flexjson, я пытаюсь сериализовать объект («Полезная нагрузка»), который содержит список. Каждый MyBean имеет поле «items», которое представляет собой Map>. Когда я сериализую этот объект Payload, поле карты («элементы») пуст.Flexjson - как сериализовать сложную иерархию, включая карту
public class Payload {
private List<MyBean> myBeans = new ArrayList<MyBean>();
//the JSON returned has blank values for myBeans.values.items
public String toJson() {
return new JSONSerializer()
.exclude("*.class")
.include("myBeans")
.serialize(this);
}
}
Однако, когда я сериализации MyBean объект напрямую, он отлично работает.
public class MyBean {
private Map<String, List<SomeBean>> items = new HashMap<String, List<SomeBean>>();
//this works
public String toJson() {
return new JSONSerializer()
.exclude("*.class")
.deepSerialize(this);
}
}
Любые предложения?
Я на самом деле есть решение и разместить его, когда StackOverflow позволяет мне. Я создал этот вопрос, чтобы попытаться избавить других от боли, с которой я прошел :) – davedonohue
Хорошая работа! +1 в Q +1 в A – rpax