理想情况下,我只想要一个字符串列表,或者Hashmap String,String:
List<String> = restTemplate.getForObject(url, List.class, urlVariables);
但是我收到错误无法提取响应:找不到适合的响应类型的HttpMessageConverter。
我可以使用restclient访问restful api并检索以下内容:
Content-Type text/javascript; charset=iso-8859-1
回复机构是:
[{"name":"lemons"},{"name":"pears"},{"name":"apples"}]
我的restTemplate定义如下:
<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/>
</list>
</property>
</bean>
答案 0 :(得分:1)
我没有合适的测试项目,但请尝试:
<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes" value="text/javascript" />
</bean>
</list>
</property>
</bean>
答案 1 :(得分:0)
我想你可能想看看这个:
https://spring.io/guides/gs/consuming-rest/
那页说:
如果您看到错误无法提取响应:没有为响应类型[类hello.Quote]找到合适的HttpMessageConverter,那么您可能处于无法连接到后端服务的环境中(如果您可以访问它,则会发送JSON) 。也许你是公司代理的幕后推手?尝试将标准系统属性http.proxyHost和http.proxyPort设置为适合您环境的值。
这正是你得到的。我知道最初的问题是在2012年,但是,希望其他人会将此视为一种可能的解决方案。