我正面临反序列化 POJO 对象的问题。
以下是 Service 端 POJO 对象的结构。
Class Ball{
int field1;
int field2;
}
Class BaseBall extends Ball
{
int field3;
int field4;
}
Class BallList{
List<Ball> balls;
}
即使在 Android 客户端,我对 POJO 对象也有类似的结构。
安卓客户端代码:
RestTemplate restTemplate = new RestTemplate();
List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>();
acceptableMediaTypes.add(new MediaType("application","json"));
HttpHeaders headers = new HttpHeaders();
headers.setAccept(acceptableMediaTypes);
HttpEntity<String> entity = new HttpEntity<String>(headers);
ResponseEntity<BallList> response = restTemplate.exchange(
url, HttpMethod.GET, entity, BallList.class);
if(response.getStatusCode() == HttpStatus.OK)
{
result += "OK";
}
04-13 18:17:46.127:错误/AndroidRuntime(4359):原因:org.springframework.web.client.ResourceAccessException:I/O 错误:无法识别的字段“filed3”(com.xx.yy.model 类。球),未标记为可忽略
在服务方面,我提供棒球列表作为响应。谁能指出我的解决方案。