Isquierdo
Isquierdo

Reputation: 745

Gson boolean conversion always false

I'm using Gson as a converter to parse my response through Retrofit, but I'm always getting false even with a positive response.

It's something like this

Response:

{"groups":{"success":true}}

GroupsResponseClass

public class GroupsResponse {

    @SerializedName("success")
    private boolean mSuccess;

    GroupsResponse() {}

    public boolean isSuccess() {
        return mSuccess;
    }

    public void setSuccess(boolean success) {
        mSuccess = success;
    }
}

I stop using GsonConverter and still get a object with a success false value

Upvotes: 2

Views: 2870

Answers (1)

pturner
pturner

Reputation: 686

Your groups object is technically nested inside another object, might need to flatten your json. If not able, this should work:

GroupsResponse.java

public class GroupsResponse {

    @SerializedName("groups")
    private Groups mGroups;

    GroupsResponse() {}

    public boolean isSuccess() {
        return mGroups.isSuccess();
    }

    public void setSuccess(boolean success) {
        mGroups.setSuccess(success);
    }
}

Groups.java

public class Groups {

    @SerializedName("success")
    private boolean mSuccess;

    Groups() {}

    public boolean isSuccess() {
        return mSuccess;
    }

    public void setSuccess(boolean success) {
        mSuccess = success;
    }
}

Upvotes: 7

Related Questions