Jak deserializować JSON Array?
Używam Jacksona w CXF do serializacji / deserializacji danych. Niestety, mam problem z konfiguracją CXF / Jackson do deserializacji tablicy JSON. Byłbym wdzięczny za pomoc w rozwiązaniu problemu.
Do tego momentu większość danych json była w formacie obiektowym, tj.
{ "objectCollection": [ {...}, {...}, {...}... ] }
Dane json, o których mowa, mają jednak postać:
[ {...}, {...}, {...} ]
Punkt końcowy usługi WWW oczekuje obiektu „GroupsDto” (patrz poniżej), który ma jedną właściwość - zbiór grup, który jest przesyłany za pośrednictwem tablicy JSON.
@PATH(...)
public Response createGroups(GroupsDto groups) {
...
}
Dodałem @JsonDeserialize w następujący sposób do właściwości kolekcji GroupsDto, ale NIE działa. Nadal otrzymuję: „Nie można deserializować instancji GroupsDto z tokena START_ARRAY”
public class GroupsDto {
private Collection<GroupDto> groups;
/**
* @return the groups
*/
@XmlElement(name="group")
@JsonDeserialize(contentAs=GroupDto.class)
public Collection<GroupDto> getGroups() {
return groups;
}
...
}