解决The resource identified by this request is only capable of generating responses with characteristi

  自己在做医药项目时,在EasyUI页面无法展示从后台返回的json数据。这种情况在以前没有遇到过,好在学习java的小伙伴多,这种问题很多大神们都已经总结好了。我照着大神们的方法去尝试,果然非常好用。只需要在本地仓库安装jackson-core、jackson-databind、jackson-annotations三个jar包,并且在springMVC.xml中配置两个bean就ok了。转载一下大神的帖子。本文转载自甜甜咿呀咿呀哟的博客。
  SpringMVC中当在浏览器中输入对应的MappingUrl时,报The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request “accept” headers.

错误的意思是:说是指定的资源已经找到,但它的MIME类型和客户在Accpet头中所指定的不兼容

@ResponseBody返回json格式的数据,而浏览器接受的是text/html;charset=UTF-8文本类型

解决方法:

1:在pom.xml中添加json所需要的依赖

<dependency>
  < groupId>com.fasterxml.jackson.core</groupId>
    < artifactId>jackson-core</artifactId>
    < version>2.7.3</version>
</dependency>

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>2.7.3</version>
</dependency>

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-annotations</artifactId>
  <version>2.7.3</version>
</dependency>

2:在springmvc配置文件中配置对应的bean

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
    <property name="messageConverters">
        <list>
            <!--json视图拦截器,读取到@ResponseBody的时候去配置它-->
            <ref bean="mappingJacksonHttpMessageConverter"/>
        </list>
    </property>
</bean>
<!--json转化器,它可以将结果转化-->
<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
    <property name="supportedMediaTypes">
        <list>
            <value>application/json;charset=UTF-8</value>
        </list>
    </property>
</bean>

重新启动不在报错了,我自己尝试了一下,确实没问题了。我自己上传一张自己展示成功的数据截图。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/innovate1989/article/details/78155028
今日推荐