我正在使用 soring MVC 3.2.1。我正在使用一个应该返回 json 的控制器,我也包含了 jackson jars。但是没有返回 json。它给出错误此请求标识的资源只能生成具有特征的响应根据请求“接受”标头()不可接受。
@RequestMapping(value = "/search.json", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
protected @ResponseBody
LoginDto searchDeals(@ModelAttribute Deal deal) {
/*
* DealDao dealdao = new DealDao(); List<Deal> deals =
* dealdao.search(deal);
*/
return new LoginDto("sdadas", "asdasdas");
}
配置
<!--
<bean name="/UploadEmployeeServlet.do"
class="com.etnow.UploadEmployeeServlet" />
-->
<context:component-scan base-package="com.etnow.*" />
<mvc:annotation-driven
content-negotiation-manager="contentNegotiationManager" />
<bean id="contentNegotiationManager"
class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="favorPathExtension" value="false" />
<property name="favorParameter" value="false" />
<property name="ignoreAcceptHeader" value="false" />
<property name="mediaTypes">
<value>
json=application/json
</value><!--
-->
</property>
</bean>
<mvc:view-controller path="/one.do" view-name="SignUp" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
请帮助它在 3.0 中可以正常工作而无需设置 contentNogotiation Manager 但不能在最新版本的 spring MVC 中