Gson не связывает список в Java - PullRequest
0 голосов
/ 08 июля 2020

Я пытаюсь преобразовать следующий Json в Java класс. По какой-то причине Gson не связывает список Ecs. Список ecs возвращает ноль. Я должен что-то сделать, чтобы Гсон узнал список. Пожалуйста, что я делаю не так?

Это мои классы:

public class ConsultaProdutos {

    public String code;
    public String mensagem;
    public List<Retorno> retorno;

    // getters and setters
}

public class Retorno {
    public String idProduto;
    public String descricaoProduto;
    public String cardType;
    public List<ECs> ecs;

   //getters and setters
}

public class ECs {
    public String codigoEC;
    public String codigoTabelaCMM;
    public boolean habilitado;
    public boolean restricaoHabilitacao;

   //getters and setters
}

public class Teste {

public static void main(String[] args) throws JsonSyntaxException, JsonIOException, FileNotFoundException {
    // TODO Auto-generated method stub
    
    Gson gson = new Gson();
    ConsultaProdutos consulta = gson.fromJson(new FileReader("D:\\ConsultaProdutos.json"), ConsultaProdutos.class);

    for (Retorno retorno : consulta.getRetorno()) {
        if (retorno.getIdProduto().equals("18")) {
            List<ECs> ecs = retorno.getEcs();
            for (ECs ec : ecs) {
                if (ec.isHabilitado()) {
                    System.out.println("Tem Loja Virtual");
                } else {
                    System.out.println("Não tem Loja Virtual");
                }
                    
            }
        }
    }

}

А это Json:

{
"code": 200,
"mensagem": "Consulta realizada com sucesso.",
"retorno": [
    {
        "idProduto": 18,
        "descricaoProduto": "Loja Digital",
        "cardType": "LJVT",
        "ECs": [
            {
                "codigoEC": 179,
                "codigoTabelaCMM": "A419",
                "habilitado": false,
                "restricaoHabilitacao": false
            }
        ]
    }
]
}

1 Ответ

0 голосов
/ 09 июля 2020

У вас проблема. Ключ - ECs, а не ecs. Отметьте этот ответ для подробностей. Валеу!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...