RestTemplate 为 getForEntity 调用返回 null
RestTemplate returning null for getForEntity call
这个returns状态200,
final ResponseEntity<MyWrapper> responseEntity = rt.getForEntity(
myURL, MyWrapper.class);
和 http headers:
{X-Powered-By=[Servlet/3.0], Content-Type=[application/json; charset=UTF-8], Cache-Control=[no-store], Transfer-Encoding=[chunked], Date=[Fri, 08 Apr 2016 20:03:11 GMT]}
但是 body 为空。
我的包装器看起来像这样:
public class MyWrapper {
private List<Object> junk;
public List<Object> getJunk() {
return isspCases;
}
public void setJunk(List<Object> junk) {
this.junk = junk;
}
}
如果我使用其中任何一个,我可以 "see" 数据:
rt.getForObject(caseListingURL, String.class);
rt.getForObject(caseListingURL, Map.class);
我有消息转换器:
[org.springframework.http.converter.ByteArrayHttpMessageConverter@a96d56c ,
org.springframework.http.converter.StringHttpMessageConverter@6ab4a5b,
org.springframework.http.converter.ResourceHttpMessageConverter@2abe9173,
org.springframework.http.converter.xml.SourceHttpMessageConverter@235d29d6,
org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter@1fdca564,
org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter@43f9dd56,
org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@1d12e953, null, null, null]
我所有的 RestTemplate 调用都会发生这种情况,我不明白为什么它在不同的环境中使用类似的代码。
我的 REST 响应看起来像这样:
{"data":[{"a":"b"}, {"a":"c"}, {"a":"d"}]}
啊原来我需要把"data"键改成"junk" 然后它会在wrapper class.
里捡起来
这个returns状态200,
final ResponseEntity<MyWrapper> responseEntity = rt.getForEntity(
myURL, MyWrapper.class);
和 http headers:
{X-Powered-By=[Servlet/3.0], Content-Type=[application/json; charset=UTF-8], Cache-Control=[no-store], Transfer-Encoding=[chunked], Date=[Fri, 08 Apr 2016 20:03:11 GMT]}
但是 body 为空。
我的包装器看起来像这样:
public class MyWrapper {
private List<Object> junk;
public List<Object> getJunk() {
return isspCases;
}
public void setJunk(List<Object> junk) {
this.junk = junk;
}
}
如果我使用其中任何一个,我可以 "see" 数据:
rt.getForObject(caseListingURL, String.class);
rt.getForObject(caseListingURL, Map.class);
我有消息转换器:
[org.springframework.http.converter.ByteArrayHttpMessageConverter@a96d56c ,
org.springframework.http.converter.StringHttpMessageConverter@6ab4a5b,
org.springframework.http.converter.ResourceHttpMessageConverter@2abe9173,
org.springframework.http.converter.xml.SourceHttpMessageConverter@235d29d6,
org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter@1fdca564,
org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter@43f9dd56,
org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@1d12e953, null, null, null]
我所有的 RestTemplate 调用都会发生这种情况,我不明白为什么它在不同的环境中使用类似的代码。
我的 REST 响应看起来像这样:
{"data":[{"a":"b"}, {"a":"c"}, {"a":"d"}]}
啊原来我需要把"data"键改成"junk" 然后它会在wrapper class.
里捡起来