Rest 弹簧支承形式数据输入法

Rest 弹簧支承形式数据输入法,rest,spring-mvc,Rest,Spring Mvc,我在下面给出了我的spring控制器和.xml文件congif信息 class TestingController { @RequestMapping(value="/addinfo",method=RequestMethod.PUT) public void addInfo(@RequestBody Userinfo user){ } 上下文 <mvc:annotation-driven/> <bean id="contentNegotiationMana

我在下面给出了我的spring控制器和.xml文件congif信息

class TestingController
{

    @RequestMapping(value="/addinfo",method=RequestMethod.PUT)
    public void addInfo(@RequestBody Userinfo user){
}
上下文

<mvc:annotation-driven/>
<bean id="contentNegotiationManager" class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<property name="ignoreAcceptHeader" value="true"/>
<property name="mediaTypes">
    <map>
        <entry key="json" value="application/json" />
        <entry key="xml" value="application/xml" />
    </map>
 </property>

这很好,因为我希望使用REST客户端处理JSON和XML请求。 例如:{“user”:“test”,“cval”:“12”,“mval”:“12}JSON工作正常

当我尝试在请求正文中使用REST客户机传递user=test&cval=12&mval=12等数据时,标题为“Content-Type:application/x-www-form-urlencoded” 我收到415个错误消息

我的要求是 SpringRESTFullWebService需要处理以下内容类型

1.application/json 2.1应用程序/xml 3.application/x-www-form-urlencoded

问候
Vasanth D

您不能将
@RequestBody
应用程序/x-www-form-urlencoded
一起使用。而是使用
modeldattribute
。您可以声明具有不同
@RequestMapping
限制的多个方法。感谢您提供的信息。请共享一些示例代码。因此,我需要在控制器中使用两种方法来处理差异其他类型的内容类型?请澄清。提前谢谢。是的,使用
@RequestMapping
注释中的
消耗
属性。或者,您可以编写并注册自己的
HttpMessageConverter
并继续使用
@RequestBody
。因此,我的xxx.spring.xml文件包含org.springframework.w(application/json)json和(application/xml)xml的eb.servlet.view.contentnegotingviewresolver以及表单数据“application/x-www-form-urlencoded”的HttpMessageConverter是否正确?