我有一个使用Jersey的端点,它接受一个对象。该对象具有列表作为其中一个成员。但是,当我发送一个空数组时,它会在列表中给我一个空元素。通过'空元素',我的意思是那里有一个对象,所有的字段都是空的。
@XMLRootElement
public class myContainer {
public List<myObject> list;
// etc
}
@XMLRootElement
public class myObject {
public String data1;
public String data2;
// etc
}
// I hit the following with "{\"list\":[]}"
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response post(final myContainer x) {
for (myObject obj : x.list) {
// why do I hit this?
// debugging, I actually have an object here with all null fields
obj.data1 == null; // true
obj.data2 == null; // true
}
}
任何人都知道为什么泽西会这样做?
我将WRITE_NULL_PROPERTIES设置为false,但我不知道这会对此产生什么影响。
答案 0 :(得分:0)
我不确定,但可能会设置
@XmlElemet(nillable=true)
public List<myObject> list;
是你要找的?