问题描述:想在页面通过按钮  进入controller中,在controller中打断点一直进不去。两个json-jar已导入,在xml中也配置了<mvc:annotation-driven/>,用的idea
jsp页面代码如下:
function requestJson(){
$.ajax({
type:"post",
url:"${pageContext.request.contextPath}/requestJson.action",
contentType:'application/json;charset=utf-8',
//数据格式是json串,商品信息
data:'{"name":"手机","price":999}',
async:false,
success:function(data){//返回json结果
alert(data);
}
});
}<input type="button" onclick="requestJson()" value="请求json,输出是json"/>
Controller:在sysout打断点一直进不去
@RequestMapping("/requestJson")
public @ResponseBody ItemsCustom requestJson(@RequestBody ItemsCustom itemsCustom){
System.out.println(itemsCustom);
return itemsCustom;
}

解决方案 »

  1.   

    客户端是post请求,在Controller上要声明接收post方式的请求,默认是get
    @RequestMapping(value={"/uploadBoxInfo"},method={org.springframework.web.bind.annotation.RequestMethod.POST})
      

  2.   

    用@PostMapping替换RequestMapping
      

  3.   

    检查下配置.action那块儿
      

  4.   


    按您说的还是行不通,感觉这个应该很容易实现啊,不知道为啥就是进不去controller中
      

  5.   

    @PostMapping解析不了。
      

  6.   

    在页面按F12看一下页面有没有报错,可能是没找到jQuery的文件
      

  7.   

    检查前端有没有发出这个请求,如果发出了那就是后端问题,如果没有发出,使用postman软件测试能不能到Controller层,还不行的话就检查你的配置
      

  8.   

    先直接请求排查url错误问题
      

  9.   

    ajax里面data属性值不要带引号,$.ajax({
    url:'',
    type:'',
    data:{},
    dataType:'',
    success:function(rs){},
    error:function(){}
    })
      

  10.   

    和这个没关系,get,post都可以,自动适应。
      

  11.   

    把请求路径中后面.action去掉