0

I just want to consume this response using Spring based Rest Template.I have tried different solutions but didn't worked out.

{
    "response": {
        "Status": "200",
        "data": [{
            "VehicleNo": "TS 11UB 5548",
            "lat": "17.44289",
            "lng": "78.39668",
            "timestamp": "19-01-2018 15:16:49",
            "speed": "0"
        }, {
            "VehicleNo": "TS 34T 3298",
            "lat": "17.44278",
            "lng": "78.39675",
            "timestamp": "19-01-2018 15:16:41",
            "speed": "0"
        }]
    }
}

Below is my Code which I have tried

RestTemplate restTemplate = new RestTemplate();
        Response response = restTemplate.getForObject("URL:XXXXXXXX", Response.class);

Response is the class which contains ("GPSEnabledVehicles" - data)

@JsonIgnoreProperties(ignoreUnknown = true)
public class Response {

    private GPSEnabledVehicles response;

    public GPSEnabledVehicles getResponse() {
        return response;
    }

    public void setResponse(GPSEnabledVehicles response) {
        this.response = response;
    }
}

Below is the GPSEnabledVehicles class which has status and List of VehicleDetails as attributes

@JsonIgnoreProperties(ignoreUnknown = true)
public class GPSEnabledVehicles {

    private String status;
    private List<VehicleDetails> vehicleDetails;

//Setters and Getter
}

Please help me on this ASAP.Thanks in Advance.

VedantK
  • 9,728
  • 7
  • 66
  • 71

1 Answers1

0
public class GPSEnabledVehicles {

    private String status;
    @JsonProperty("data")   ===> this
    private List<VehicleDetails> vehicleDetails;

//Setters and Getter
}

or

public class GPSEnabledVehicles {

    private String status;
    private List<VehicleDetails> data;   ==> same name

//Setters and Getter
}

JsonProperty

VedantK
  • 9,728
  • 7
  • 66
  • 71
  • It's working but, the VehicleNo and Status are returning nulls. Here is the response -----> "[response=GPSEnabledVehicles [Status=null, data=[VehicleDetails [VehicleNo=null, lat=17.4908, lng=78.4072, timestamp=19-01-2018 17:32:42, speed=0], VehicleDetails [VehicleNo=null, lat=17.44285, lng=78.39652, timestamp=19-01-2018 17:31:34, speed=0]]" – Santhosh Keshannagari Jan 19 '18 at 12:12
  • Check status == Status similarly check VehicalNo, Or add this VehicleDetails class for me to check – VedantK Jan 19 '18 at 13:13