Я пытаюсь реализовать веб-службу RESTful с сервлетами Джексона и Джерси. Мои веб-сервисы могут создавать этот конкретный JSON, как показано
{
"email":"[email protected]",
"source":{
"G":33.2470567,
"K":-95.89996559999997
},
"destination":{
"G":33.0198431,
"K":-96.69888559999998
},
"waypoints":[
{
"location":"Dallas, TX, USA",
"stopover":true
},
{
"location":"Houston, TX, USA",
"stopover":true
}
]
}
Но когда я пытаюсь использовать тот же JSON, он выдает внутреннюю ошибку сервера 500:
org.codehaus.jackson.JsonParseException: Unexpected character ('Â' (code 194)): was expecting double-quote to start field name
Мои POJO и веб-служба выглядят следующим образом:
@XmlRootElement
public class RiderVO {
private String email;
private MapLocation source;
private MapLocation destination;
private List<Waypoint> waypoints;
//getters and setters
}
@XmlRootElement
public class MapLocation {
private Double G;
private Double K;
//getters and setters
}
@XmlRootElement
public class Waypoint {
private String location;
private Boolean stopover;
//getters & setters
}
ВЕБ-СЕРВИС:
@POST
@Path("/saveAll")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public String saveRideJson(RiderVO riderVO){
//do something
}
Я не могу понять, когда он может создавать определенный JSON, почему я не могу его использовать. Я попытался изменить логические параметры и проверить, не выдает ли его установщик isVar, например здесь. Но даже это не исправило. Любые предложения полезны. Заранее спасибо!