简体   繁体   中英

Getting error: The request sent by the client was syntactically incorrect

On one of the action I want it to take a POST of content. I am sending the following values:

        permissionId = $('#permissionId').val();
        var emails   = $.trim($('#emails', win).val());
        var sms      = $.trim($('#sendSms', win).is(':checked'));
        var email    = $.trim($('#sendEmail', win).is(':checked'));
        var override = $.trim($('#cannotOverride', win).is(':checked'));            

window.location = '/aims/monitoringPermissions/' + permissionId + '/' + emails + '/' + sms + '/' + email+ '/' + override+ '/' + monitId; 

However, when I send it I am getting the following error:

The request sent by the client was syntactically incorrect.

My action looks like this

  @RequestMapping(value="/monitoringPermissions/{permissionId}/{emails}/{sms}/{email}/{override}/{monitId}", method = RequestMethod.GET)
  public ModelAndView submitPermissions(@PathVariable long roleId, @PathVariable String emails,
        @PathVariable boolean canSendSMS, @PathVariable boolean canSendEmail, @PathVariable boolean cannotOverride, @PathVariable long monitoringId,Model model, HttpSession session,
        Principal principal, @ModelAttribute("permission") MonitoringPermission monitoringPermission) throws Exception {

Please help.

you have incorrect @pathvariable variable names:

Spring automatically matches a path variable to a parameter that has the exact same name should be something like:

@RequestMapping(value="/monitoringPermissions/{permissionId}/{emails}/{sms}/{email}/{override}/{monitId}", method = RequestMethod.GET)
  public ModelAndView submitPermissions(@PathVariable long permissionId, @PathVariable String emails,
        @PathVariable boolean sms, @PathVariable boolean email, @PathVariable boolean override, @PathVariable long monitId,Model model, HttpSession session,
        Principal principal, @ModelAttribute("permission") MonitoringPermission monitoringPermission) throws Exception {

or something like:

@RequestMapping(value="/monitoringPermissions/{permissionId}/{emails}/{sms}/{email}/{override}/{monitId}", method = RequestMethod.GET)
  public ModelAndView submitPermissions(@PathVariable("permissionId") long roleId, @PathVariable("emails") String emails,
        @PathVariable("sms") boolean canSendSMS, @PathVariable("email") boolean canSendEmail, @PathVariable("override") boolean cannotOverride, @PathVariable("monitId") long monitoringId,Model model, HttpSession session,
        Principal principal, @ModelAttribute("permission") MonitoringPermission monitoringPermission) throws Exception {

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM