Domanda

Che cosa sto facendo di sbagliato che la proprietà posizioni è non essere deserializzato?

JSON frammento pollinglocation.googleapis.com

...
"locations":[[{"dataset_id":841,
                "election_id":2,
                "id":"841:100001351",
                "address":{"location_name":"ROBERT S PAYNE SCHOOL",
                           "line1":"1201 Floyd St",
                           "city":"Lynchburg",
                           "state":"VA",
                           "zip":"245011913"},
                           "directions":"",
                           "polling_hours":"6 AM - 7 PM"}]],
...

Java Object

public class PollingLocation {

 public PollingLocation() {
 }

 String status;
 ArrayList<ArrayList<Anonymous>> locations;

 public class Anonymous {

  public Anonymous() {
  }

  String dataset_id;
  String election_id;
  String id;
  Address address;
 }

 public class Address {

  public Address() {
  }

  String location_name;
  String line1;
  String city;
  String stage;
  String zip;
  String polling_hours;
 }
}

Il codice che deserializza

PollingLocation obj2 = gson.fromJson(json, PollingLocation.class);
È stato utile?

Soluzione

Tutto. In particolare, non è possibile utilizzare le classi interne o classi di raccolta.

public class PollingLocation {

    public PollingLocation() {
    }

    String status;
    Anonymous[][] locations;

}

class Anonymous {

    public Anonymous() {
    }

    String dataset_id;
    String election_id;
    String id;
    Address address;
}

class Address {

    public Address() {
    }

    String location_name;
    String line1;
    String city;
    String stage;
    String zip;
    String polling_hours;
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top