Wie deserialisiere ich ein JSON-Array?

Ich verwende Jackson in CXF, um Daten zu serialisieren / zu deserialisieren. Leider habe ich Probleme, CXF / Jackson so zu konfigurieren, dass ein JSON-Array deserialisiert wird. Ich würde mich über Hilfe bei der Lösung des Problems freuen.

Bis zu diesem Punkt waren die meisten json-Daten im Objektformat, d. H.

{ "objectCollection": [ {...}, {...}, {...}... ] }

Die fraglichen json-Daten haben jedoch die Form:

[ {...}, {...}, {...} ]

Der Web-Service-Endpunkt erwartet ein "GroupsDto" -Objekt (siehe unten) mit einer einzigen Eigenschaft - einer Auflistung von Gruppen, die über das JSON-Array übertragen wird.

@PATH(...)
public Response createGroups(GroupsDto groups) {
...
}

Ich habe @JsonDeserialize wie folgt zur GroupsDto-Auflistungseigenschaft hinzugefügt, aber es funktioniert NICHT. Ich erhalte weiterhin: "Instanz von GroupsDto kann nicht aus START_ARRAY-Token deserialisiert werden"

public class GroupsDto {

       private Collection<GroupDto> groups;

       /**
        * @return the groups
        */
       @XmlElement(name="group")
       @JsonDeserialize(contentAs=GroupDto.class)
       public Collection<GroupDto> getGroups() {
               return groups;
       }
...
}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage