当与Spring MVC和JSON结合使用时,我不断收到针对AJAX请求的HttpMediaTypeNotAcceptableException错误。
org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.writeWithMessageConverters(AnnotationMethodHandlerAdapter.java:1032) org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.handleResponseBody(AnnotationMethodHandlerAdapter.java:972) org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.getModelAndView(AnnotationMethodHandlerAdapter.java:921) org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:438) org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:424) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:863) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:851) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:756) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
我确实做了一点点谷歌搜索,该请求应包含类似“ accept:application / json”的内容,这确实具有..这是来自firebug的请求标头。
Response Headers Server Apache-Coyote/1.1 Content-Type text/html;charset=utf-8 Content-Length 2503 Date Thu, 25 Aug 2011 21:00:05 GMT Connection close Request Headers Host localhost:8080 User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.20) Gecko/20110803 Firefox/3.6.20 (.NET CLR 3.5.30729) Accept application/json, text/javascript, */*; q=0.01 Accept-Language en-us,en;q=0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive 115 Connection keep-alive X-Requested-With XMLHttpRequest Referer http://localhost:8080/legaldirectory/index.html Cookie JSESSIONID=5C97DA19AED4D5FA17F4A58470FAA93B
现在我完全迷失了这里发生的事情..还有什么地方可能出错而导致错误…
请确保你的Spring xml文件中包含以下内容:
<context:annotation-config/> <bean id="jacksonMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list> <ref bean="jacksonMessageConverter"/> </list> </property> </bean>
并且你的POJO中的所有项目都应具有吸气剂/阻焊剂。希望能帮助到你