-1

我有下面的 JSON 数组,由 WebService 上的 JPA 函数创建:

[{"Producao":{"cliente":{"id":3,"nome_fantasia":"animal"},"data":"2013-11-08T00:00:00-02:00","id":1,"liberado":0,"prazo":"2013-11-14T00:00:00-02:00","produto":{"codigo_desenho":"CODIGO","dependencia":0,"descricao":"Produto1","disponivel":1,"id":39,"qtde":1,"raiz":0},"qtde":1}},{"Producao":{"cliente":{"id":1,"nome_fantasia":"bem"},"data":"2013-11-08T00:00:00-02:00","id":2,"liberado":0,"prazo":"2013-11-14T00:00:00-02:00","produto":{"codigo_desenho":"","dependencia":0,"descricao":"teste3","disponivel":1,"id":35,"qtde":1,"raiz":0},"qtde":2}}]

我必须在我的 Android 应用程序中阅读它。将它们转换为列表。对象“Producao”具有对象“Cliente”作为属性。

我正在尝试执行以下操作:

public static Producao jSONToProducao(JSONObject json) throws JSONException, ParseException{
        JSONObject jPro = json.getJSONObject("Producao");
        Producao producao = new Producao();
        producao.setId(jPro.getInt("id"));
    producao.setCliente(ClienteDAO.jSONToCliente(jPro.getJSONObject("cliente")));
    .
    .
    .
    return producao;
}

ClienteDAO.jSONToClient 在哪里:

public static Cliente jSONToCliente(JSONObject json) throws JSONException{
        JSONObject jCli = json.getJSONObject("Cliente");
        Cliente cliente = new Cliente();
        cliente.setId(jCli.getInt("id"));
        cliente.setNome_fantasia(jCli.getString("nome_fantasia"));
    return cliente;
}

但该行producao.setCliente(ClienteDAO.jSONToCliente(jPro.getJSONObject("cliente")))返回:

JSON 异常 ~> 对客户没有价值”。¬¬'

我也尝试将其读取为 JSONArray,但它不起作用。

4

1 回答 1

0

JSON 异常 ~> 对客户没有价值

因为您将clienteJSONObject 传递给jSONToCliente方法,jSONToProducao所以更改您的代码以从clienteJSONObject 获取所有值:

public static Cliente jSONToCliente(JSONObject json) throws JSONException{
     // json contain only cliente JSONObject
        Cliente cliente = new Cliente();
        cliente.setId(json.getInt("id"));
        cliente.setNome_fantasia(json.getString("nome_fantasia"));
    return cliente;
}
于 2013-11-10T14:35:16.950 回答