我必须调用REST WS,它可以返回任何JSON结构,我只需要 id 和 name ,每个服务都将返回。我写的代码是: -
`
public class RestWebServiceCaller {
public static <T> ArrayList<T> callGETRestWebService(String url,String mediaType, Class<T> responseType) throws Exception {
ClientRequest request=new ClientRequest(url);
request.accept(mediaType);
ClientResponse<T> response=request.get(responseType);
return (ArrayList<T>)response.getEntity();
}
public static void main(String[] args) {
try {
ArrayList<ScopeResponse> response=callGETRestWebService("http://10.63.8.220:9080/get",MediaType.APPLICATION_JSON
,ScopeResponse.class);
ArrayList<ScopeResponse> scope=(ArrayList<ScopeResponse>) response;
System.out.println(scope.get(0).getName());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
@JsonIgnoreProperties(ignoreUnknown = true)
public class ScopeResponse {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
} 但是这行 System.out.println(scope.get(0).getName()); 正在给出类强制转换异常。 我的要求是有一个Custom类(具有Id和Name属性),可以将每个Rest调用转换为List 提前谢谢。