JAX-RS REST-service Rückgabe boolean as string

Ich bin mit JAX-RS zu produzieren, die einen RESTful-Dienst. Jedoch beim anfordern von JSON -, boolean-Werte zurück, wie eine Zeichenfolge in Anführungszeichen {"boolValue":"true"} anstatt einen booleschen Wert {"boolValue":true}.

Einem einfachen Objekt

@XmlRootElement
    public class JaxBoolTest {
    private boolean working;

    public boolean isWorking() {
        return working;
    }

    public void setWorking(boolean working) {
        this.working = working;
    }

}

Einem einfachen JAX-RS REST-Dienst

@Path("/jaxBoolTest")
public class JaxBoolTestResouce {
    @GET
    @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
    public JaxBoolTest getJaxBoolTest() {
        JaxBoolTest jbt = new JaxBoolTest();
        jbt.setWorking(false);
        return jbt;
    }
}

Und das Ergebnis:

{"working":"false"}

Wie bekomme ich die boolean-Werte als Boolesche Werte anstatt strings?

Was die JAX-RS-Implementierung benutzt du?
Die JSON-serializer verwenden Sie? (Ich habe es vermeiden wollen...)
Sie haben eine sonderbare Ergebnis - Sie setzen die Arbeits-Eigenschaft auf true, aber seine Darstellung als (string) "false". Vorausgesetzt, dies ist kein Tippfehler auf Ihrer Seite, Ihre JSON-library möglicherweise nicht erkannt hat die Eigenschaft, da die besser ist benannt isWorking (im Gegensatz zu getWorking). Nur so ein Gedanke.
Ich weiß nicht, welche JSON-serializer verwende ich. Ich habe gerade heruntergeladen Jersey 1.17 enthalten, wo Jackson 1.9.2.
Jackson (jackson-jaxrs-1.9.2.jar) ich glaube

InformationsquelleAutor Schlameel | 2013-02-12

Schreibe einen Kommentar