我正在点击服务来查找某人的详细信息,响应采用xml格式,如下所示:
<ArrayOfPersonResults xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<PersonResults>
<Name>John Doe</Name>
<State>NY</State>
<Zip>12345</Zip>
</PersonResults>
</ArrayOfPersonResults>
我正在使用Spring RestTempate并将响应映射到以下POJO,
public class Person {
private String zip;
private String name;
private String state;
public String getZip() {
return zip;
}
@JsonProperty("Zip")
public void setZip(String zip) {
this.zip = zip;
}
public String getName() {
return name;
}
@JsonProperty("Name")
public void setName(String name) {
this.name = name;
}
public String getState() {
return state;
}
@JsonProperty("State")
public void setState(String state) {
this.state = state;
}
}
我使用rest模板
调用服务public Person[] getPersosn(String personId) {
try {
return getRestTemplate().getForObject(personServiceURL, Person[].class, personId);
} catch (Exception e) {
return null;
}
}
但我一直得到例外, org.springframework.web.client.RestClientException:无法提取响应:没有为响应类型找到合适的HttpMessageConverter [class [Lcom.cdk.dataloader.model.Person;]和内容类型[application / json; charset = utf-8]
我不确定为什么我会得到这个,任何帮助表示赞赏。
答案 0 :(得分:1)
您的内容类型为application/json;charset=utf-8
,但您获得了XML。将内容添加到JSON或将内容类型更改为text/xml, application/xml