Używam Jackson w CXF do serializacji/deserializacji danych. Niestety, mam problem z konfiguracją CXF/Jackson w celu deserializacji macierzy JSON. Byłbym wdzięczny za pomoc w rozwiązaniu problemu.Jak odserializować macierz JSON?
Do tej pory większość danych json został w formacie obiektu, tj
{ "objectCollection": [ {...}, {...}, {...}... ] }
Jednak dane json których mowa, ma postać:
[ {...}, {...}, {...} ]
Punkt końcowy usługi sieci Web oczekuje obiektu "GroupsDto" (patrz poniżej), który ma jedną właściwość - zbiór grup, który jest transmitowany przez t on tablicę JSON.
@PATH(...)
public Response createGroups(GroupsDto groups) {
...
}
Dodałem @JsonDeserialize w następujący sposób do właściwości kolekcji GroupsDto, ale to NIE działa. I nadal się: „Nie można deserializować instancję GroupsDto z START_ARRAY tokena”
public class GroupsDto {
private Collection<GroupDto> groups;
/**
* @return the groups
*/
@XmlElement(name="group")
@JsonDeserialize(contentAs=GroupDto.class)
public Collection<GroupDto> getGroups() {
return groups;
}
...
}
zobacz na to pytanie [Jackson - odczyt tablicy JSON z Robospice pomocą loadDataFromNetwork() Metoda] [1] [1]: http://stackoverflow.com/questions/18792702/jackson-reading- a-json-array-with-robospice-using-loaddatafromnetwork-method – Sneg