Java.util.Map zum JSON-Objekt mit Jersey / JAXB / Jackson

Ich versucht habe zu erstellen, die einen Jersey-REST-Webservice. Ich will zu empfangen und auszusenden, für die JSON Objekte aus Java-Klassen wie folgt:

@XmlRootElement
public class Book {

    public String code;

    public HashMap<String, String> names;

}

Dieser soll umgewandelt werden in das JSON so:

{
    "code": "ABC123",
    "names": {
        "de": "Die fabelhafte Welt der Amelie",
        "fr": "Le fabuleux destin d'Amelie Poulain"
    }
}

Aber ich kann nicht finden, eine standard-Lösung für dieses. Jeder scheint zu sein, die Umsetzung seiner eigenen wrapper Lösung. Diese Anforderung scheint extrem basic zu mir; ich kann nicht glauben, dass dies die allgemein akzeptierte Lösung, vor allem, da der Jersey ist wirklich einer der mehr Spaß Teile von Java.

Ich habe auch versucht das Upgrade zu Jackson 1,8, die nur gibt mir das, ist extrem obfusicated JSON:

{
    "code": "ABC123",
    "names": {
        "entry": [{
            "key": "de",
            "value": "Die fabelhafte Welt der Amelie"
        },
        {
            "key": "fr",
            "value": "Le fabuleux destin d'Amelie Poulain"
        }]
    }
}

Gibt es irgendwelche Lösungsvorschläge?

InformationsquelleAutor der Frage samy-delux | 2011-04-26

Schreibe einen Kommentar