ajax请求能进后台,但是前台报找不到url

问题描述:在做ajax请求时,通过debug能够进入到java后台,但是前台还是报404找不到url


前台ajax代码:

 
 
$.ajax({
                                url:"${ctx}/arrange/scheduleApproveMain/newSubmit",
                                type: "post",
                                data:params,
                                async :false,//默认是true:异步,false同步
                                dataType: "json",
                                traditional: true,
                                success: function (dates) {
                                    $.each(dates,function(key,value){
                                        if(value == "true"){
                                            $.jBox.alert("提交成功!","系统提示")
                                        }else{
                                            $.jBox.alert("提示失败!","系统提示");
                                        }
                                   })
                                }
                            });
后台写法:

 @RequestMapping(value = "newSubmit")
    public String newSubmit(User user,String officeId,Model model,String remarks,String scheduleMonth,String pbBeginTime,String pbEndTime,
                            String approveUsers,RedirectAttributes redirectAttributes,HttpServletRequest request, HttpServletResponse response){
        Map<String,String> map = new HashMap<String,String>();
        //实例化审批对象
        ScheduleApproveMain scheduleApproveMain = new ScheduleApproveMain();
        //获得申请人信息
        user = UserUtils.getUser();
        //获得要保存的id
        String id = arrangeUtil.getStringId();
        String name = user.getCompany().getName();
        String officeName = user.getOffice().getName();
        scheduleApproveMain.setId(id);
        scheduleApproveMain.setBusinessId("1");
        scheduleApproveMain.setTitle(title);
        scheduleApproveMain.setApplicationContent(remarks);
        scheduleApproveMain.setApplicationUname(user.getLoginName());
        scheduleApproveMain.setApplicationDate(String.valueOf(new Date()));
        Office office = new Office();
        office.setId(officeId);
        scheduleApproveMain.setOffice(office);
        scheduleApproveMain.setScheduleBeginDate(pbBeginTime);
        scheduleApproveMain.setScheduleEndDate(pbEndTime);
        scheduleApproveMain.setCreateBy(user);
        scheduleApproveMain.setCreateDate(new Date());
        scheduleApproveMain.setUpdateBy(user);
        scheduleApproveMain.setUpdateDate(new Date());
        List<ScheduleApproveMain> list = scheduleApproveMainService.findList(scheduleApproveMain);
        if (null == list || list.size() ==0){
            scheduleApproveMainService.approveSave(scheduleApproveMain);
            JSONObject json = new JSONObject();
            json.put("check","true");
            return json.toString();
        }else{
            JSONObject json = new JSONObject();
            json.put("check","false");
            return json.toString();
        }
    }
经分析是请求没有返回状态码,这是因为我用的是SpringMVC框架,前后端使用JSON传递数据,因为返回的是对象,而忘记了添加

@ResponseBody
所以 Spring对我的返回值进行了映射,但是映射结果又对应不到视图,所以返回了404

正常情况是应该在上边java后台方法上添加@ResponseBody注解,然后启动重新访问问题解决。

猜你喜欢

转载自blog.csdn.net/qq_21875331/article/details/77849469