我有一个Spring REST Web服务,我的控制器中使用MappingJacksonHttpMessageConverter将返回的模型转换为JSON格式。但是当我用firebug检查时,Content-Type=application/json;charset=UTF-8。
此外,我正在尝试使用Spring Android Rest Template在Android客户端上解析此结果,但我不断收到以下错误信息:
无法提取响应:找不到适合的HttpMessageConverter,对于响应类型[xxx.SamplePageActivity$ Result]和内容类型application/json; charset=UTF-8]
这可能是MappingJacksonHttpMessageConverter在Android客户端端期望的完全是
所以我的问题是如何将Spring的MappingJacksonHttpMessageConverter的返回Content-Type从
这是我的视图解析器配置,也许有用:
此外,我正在尝试使用Spring Android Rest Template在Android客户端上解析此结果,但我不断收到以下错误信息:
无法提取响应:找不到适合的HttpMessageConverter,对于响应类型[xxx.SamplePageActivity$ Result]和内容类型application/json; charset=UTF-8]
这可能是MappingJacksonHttpMessageConverter在Android客户端端期望的完全是
application/json
类型。所以我的问题是如何将Spring的MappingJacksonHttpMessageConverter的返回Content-Type从
application/json;charset=UTF-8
更改为application/json
。这是我的视图解析器配置,也许有用:
<beans:bean
class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<beans:property name="mediaTypes">
<beans:map>
<beans:entry key="html" value="text/html" />
<beans:entry key="json" value="application/json" />
</beans:map>
</beans:property>
<beans:property name="viewResolvers">
<beans:list>
<beans:bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value="${dispatcher.suffix}" />
</beans:bean>
</beans:list>
</beans:property>
<beans:property name="defaultViews">
<beans:list>
<beans:bean
class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" />
</beans:list>
</beans:property>
</beans:bean>
<beans:bean id="messageAdapter"
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<beans:property name="messageConverters">
<beans:list>
<!-- Support JSON -->
<beans:bean
class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
</beans:list>
</beans:property>
</beans:bean>