Gson - парсинг от Json в типизированный ArrayList <T> - PullRequest
0 голосов
/ 19 июня 2019

Сгенерированные классы GSON JAVA из JSON Response.Я пытаюсь проанализировать Address1 и Address из класса Address_.java.Он был сгенерирован из ответа JSON.Я использую GSON для его анализа и пытаюсь прочитать значение Address1 и Address2 из него.Я пробовал разные способы разбора, но попытка не удалась.

AddressList.java

public class AddressList {

    @SerializedName("_embedded")
    @Expose
    private Embedded embedded;

    public Embedded getEmbedded() {
        return embedded;
    }

    public void setEmbedded(Embedded embedded) {
        this.embedded = embedded;
    }

}

Embedded.java

public class Embedded {

    @SerializedName("address")
    @Expose
    private List<Address> address = null;

    public List<Address> getAddress() {
        return address;
    }

    public void setAddress(List<Address> address) {
        this.address = address;
    }

}

Address.java

public class Address {

    @SerializedName("_links")
    @Expose
    private Links_ links;
    @SerializedName("_embedded")
    @Expose
    private Object embedded;
    @SerializedName("customer")
    @Expose
    private String customer;
    @SerializedName("account")
    @Expose
    private String account;
    @SerializedName("address1")
    @Expose
    private String address1;
    @SerializedName("address2")
    @Expose
    private String address2;


    public Links_ getLinks() {
        return links;
    }

    public void setLinks(Links_ links) {
        this.links = links;
    }

    public Object getEmbedded() {
        return embedded;
    }

    public void setEmbedded(Object embedded) {
        this.embedded = embedded;
    }

    public String getCustomer() {
        return customer;
    }

    public void setCustomer(String customer) {
        this.customer = customer;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getAddress1() {
        return address1;
    }

    public void setAddress1(String address1) {
        this.address1 = address1;
    }

    public String getAddress2() {
        return address2;
    }

    public void setAddress2(String address2) {
        this.address2 = address2;
    }

}

GSON RESPONSE

{
    "_links": {
        "self": {
            "href": "https://xxxxx/xxx/address?where=xxx%20eq%20xx%20and%20customer%20eq%xxxx&page=1&pagesize=50"
        }
    },
    "_embedded": {
        "address": [
            {
                "_links": {
                    "self": {
                        "href": "https://xxxx/xxxx/xxxx/xxxx"
                    }
                },
                "_embedded": null,
                "customer": "12345",
                "account": "",
                "address1": "111 ABC DR",
                "address2": " ",
            }
        ]
    },
    "totalItems": 1,
    "pageSize": 50,
    "totalPages": 1,
    "currentPage": 1
}

Может кто-нибудь, пожалуйста, помогите мне?Спасибо

1 Ответ

0 голосов
/ 19 июня 2019

Спасибо GhostCat.Я удалил _embedded из ответа и сам объект, и он начал работать.Сторонние веб-сервисы отправляли ответ с _.Сейчас работает.

...