JSON-Post-Anfrage für ein boolesches Feld sendet standardmäßig false

Hallo, ich bin das senden einer JSON-Post request mit dem FireFox RestClient.

Mein JSON-Anfrage ist wie folgt:

 { "firstName": "Test", "lastName": "1", "isActive": 1 }

Mein POJO hat isActive Feld, wie unten

  private boolean isActive;

Mein Controller ist zu definieren, wie unten

@RequestMapping(method = {RequestMethod.POST, 
                                 RequestMethod.PUT}, value = "/save")
public ResponseEntity<RestResponse> save(
      @RequestBody POJOUserDetails userDetails, WebRequest request){

In meinem POJO, wenn ich den Wert isActive, ist es falsch egal was ich sende.
Ich habe versucht, unten Wert in meinem JSON-Anfrage

"isActive": 1
"isActive": true 
"isActive": "true"
"isActive": ""
"isActive": null
"isActive": false

Alle oben sendet falsche in meinem controller. Bitte helfen Sie. Dank

Hinzufügen POJO details

@JsonIgnoreProperties(ignoreUnknown = true)
@JsonSerialize(include=Inclusion.NON_EMPTY)
public class POJOUserDetails {
private String firstName;
private String lastName;
private boolean isActive;

public boolean isActive() {
    return isActive;
}
public void setActive(boolean isActive) {
    this.isActive = isActive;       
}

    public String getFirstName() {
    return firstName;
}
public void setFirstName(String firstName) {
    this.firstName = firstName;
}
public String getLastName() {
    return lastName;
}
public void setLastName(String lastName) {
    this.lastName = lastName;
}   
}

InformationsquelleAutor der Frage NewQueries | 2014-02-20

Schreibe einen Kommentar