Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Gson - Json

Olá Cristian. Eu usava um tempo com collectionType meu cast para objetos da classe. Depois de um tempo passou a dar problema e resolvi usar JSONReader. Claro, miinha classe Pedido tem um construtor publico.
Segue exemplo de código:
            try {
                JsonReader reader = new JsonReader(new InputStreamReader(is, "UTF-8"));
                reader.beginArray();
                while (reader.hasNext()){
                    PedidoObj objPed = new Gson().fromJson(reader,PedidoObj.class);
                    objPed.dt_ult_atu*=1000;
                    objPed.data_digitacao*=1000;
                    // dbPed.Insert(objPed); Classe dbPED que insere no banco
                    novos++;
                }
                reader.endArray();
                reader.close();
            } catch (Exception e) {
                Log.e("Error: ", "MSG: "+e.getMessage());
            } finally {
                dbPed.endTrans();
            }


2012/7/3 Buiu <buiucardoso@gmail.com>
pior que não resolveu....


Em 3 de julho de 2012 23:16, luciofm <luciofm@gmail.com> escreveu:

falta um construtor public sem parametros

public WebServiceRetornoGeral() {
}

Lúcio Maciel
luciofm@gmail.com



2012/7/3 Cristian Cardoso <buiucardoso@gmail.com>

Boa noite pessoal!

Novamente aqui para pedir ajuda...

Estou consumindo um WebService que tem como resposta:

{"resultado":1,"msg":"ok","msgerro":"aaaa"}

 

Estou usando a biblioteca Gson para transformar este json em um objeto, funciona perfeito enquanto estou em modo debug, quando faço o export do meu aplicativo e instalo, ele não da erro, simplesmente so não popula a classe assim como fazia em debug. Como se o retorno do webservice fosse em branco. Dei os prints do retorno do webservice para certificar que esta retornando certo e esta 100% como o esperado...

Alguém já usou esta biblioteca Gson? Alguém teria alguma dica de onde estou errando?

 

public class WebServiceRetornoGeral {

 

       public int resultado;

       public String msgerro;

       public String msg;

 

}

----------

Type collectionType = new TypeToken<WebServiceRetornoGeral>() {}.getType();

 

Gson gson = new Gson();

 

String response = "{\"resultado\":1,\"msg\":\"ok\",\"msgerro\":\"aaaa\"}";

WebServiceRetornoGeral retorno = gson.fromJson(response, collectionType); /// tentei tbm colocar apenas WebServiceRetornoGeral.class mas tbm não rolou

if (retorno.resultado == 1) {

////

}else{

////

}





--
Abraço
Cristian Cardoso
@CTNCardoso
http://ctncardoso.com.br

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário