title: Deserializing Multiple inner classes using GSON
body: <p>I am trying Deserialize data from JSON object using gson. I am having trouble with 1)designing a class. 2) getting a null object from the inner list object. </p>
  
  <p>Here is a sample of the JSON object</p>
  
  <pre><code>{
    "spatialReference" : {
      "wkid" : 102113
    },
    "candidates" : [
      {
        "address" : "202 S Van Ness Ave, San Francisco, CA, 94110",
        "location" : {
          "x" : -13627444.2697,
          "y" : 4546249.2471000031
        },
        "score" : 85.969999999999999,
        "attributes" : {
          "Loc_name" : "US_RoofTop",
          "Score" : 85.969999999999999,
          "Match_addr" : "505 S Van Ness Ave, San Francisco, CA, 94110",
          "House" : "505",
          "Side" : "R",
          "PreDir" : "S",
          "PreType" : "",
          "StreetName" : "Van Ness",
          "SufType" : "Ave",
          "SufDir" : "",
          "City" : "San Francisco",
          "State" : "CA",
          "ZIP" : "94110",
          "X" : -122.417416,
          "Y" : 37.764772999999998,
          "Disp_Lon" : -122.416991,
          "Disp_Lat" : 37.764809999999997,
          "Addr_type" : "StreetAddress",
          "Province" : "",
          "Postal" : "",
          "FromAddr" : "",
          "ToAddr" : "",
          "ZIP4" : "",
          "ZIP4_TYPE" : "",
          "User_fld" : "",
          "Ldu" : "",
          "xmin" : 0,
          "xmax" : 0,
          "ymin" : 0,
          "ymax" : 0
        }
      },
      {
        "address" : "505 Van Ness Ave, San Francisco, CA, 94102",
        "location" : {
          "x" : -13627778.172800001,
          "y" : 4548412.0926000029
        },
        "score" : 100,
        "attributes" : {
          "Loc_name" : "US_Streets",
          "Score" : 100,
          "Match_addr" : "505 Van Ness Ave, San Francisco, CA, 94102",
          "House" : "",
          "Side" : "L",
          "PreDir" : "",
          "PreType" : "",
          "StreetName" : "Van Ness",
          "SufType" : "Ave",
          "SufDir" : "",
          "City" : "San Francisco",
          "State" : "CA",
          "ZIP" : "94102",
          "X" : -122.42041500000001,
          "Y" : 37.780130999999997,
          "Disp_Lon" : 0,
          "Disp_Lat" : 0,
          "Addr_type" : "StreetAddress",
          "Province" : "",
          "Postal" : "",
          "FromAddr" : "501",
          "ToAddr" : "525",
          "ZIP4" : "",
          "ZIP4_TYPE" : "",
          "User_fld" : "",
          "Ldu" : "",
          "xmin" : 0,
          "xmax" : 0,
          "ymin" : 0,
          "ymax" : 0
        }
      }]
  </code></pre>
  
  <p>Here is a sample of the class i made for the json object to use with gson using java</p>
  
  <pre><code>    public class Response {
  
      public Response()
      {}
  
      SpatialReference spatial;
  
      public List&lt;Candidates&gt; candidate;
  
      public class Candidates
      {
          public Candidates()
          {}
  
          @SerializedName("address")
          public String address;
  
          Location location;
  
          @SerializedName("score")
          public double score;
  
          Attribute attributes;
  
          Double getScore()
          {
              return score;
          }
  
      }
  
      public class Attribute {
  
          public Attribute()
          {}
  
          @SerializedName("Disp_Lon")
          public double dispLong;
  
          @SerializedName("Disp_Lat")
          public double dispLat;
  
      }
  
      public class Location {
  
          public Location()
          {}
  
          @SerializedName("x")
          public double x;
  
          @SerializedName("y")
          public double y;
  
      }
  
      public class SpatialReference {
  
          SpatialReference()
          {}
  
          @SerializedName("wkid")
          public String wkid;
  
      }
  
  }
  </code></pre>
  
  <p>Here is the sample code using gson </p>
  
  <pre><code>        Gson gson= new Gson()
  
          response1= gson.fromJson(reader, Response.class);
  
          return response1;
  </code></pre>
  
  <p>Any help would be appreciated and I am very new to GSON and retrieving JSON objects. Thank you very much </p>