Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
多文件上传程序Jquery多部分解析器不工作_Jquery_Ajax_Spring_Jquery File Upload_Multifile Uploader - Fatal编程技术网

多文件上传程序Jquery多部分解析器不工作

多文件上传程序Jquery多部分解析器不工作,jquery,ajax,spring,jquery-file-upload,multifile-uploader,Jquery,Ajax,Spring,Jquery File Upload,Multifile Uploader,我试图上传一个文件到我的前端系统,作为测试,将其保存到我的C驱动器的本地文件夹中。我有ajax函数和controller方法,但似乎无法找出spring日志中错误消息的含义 Ajax功能: function makeProgress(){ var url = getRelativeURL("web/fileUpload"); var formData = new FormData(); formD

我试图上传一个文件到我的前端系统,作为测试,将其保存到我的C驱动器的本地文件夹中。我有ajax函数和controller方法,但似乎无法找出spring日志中错误消息的含义

Ajax功能:

    function makeProgress(){                    
      var url = getRelativeURL("web/fileUpload");        
      var formData = new FormData();
      formData.append('file', $('input[type=file]')[0].files[0]);
      console.log("form data " + formData);
      $.ajax({
          url : url,
          data : formData,
          processData : false,
          contentType : "multipart/form-data",
          type : 'POST',
          success : function(data) {
              alert(data);
          },
          error : function(err) {
              alert(err);
          }
     });

        }
服务器端控制器:

private static String UPLOADED_FOLDER = "C://temp//";

@RequestMapping(value = { "/fileUpload" }, method = RequestMethod.POST, consumes ={"multipart/form-data"})
@ResponseBody
public String uploadFile(@RequestParam("file") MultipartFile file, HttpServletRequest req, HttpServletResponse res)
{       
    try {

            byte[] bytes = file.getBytes();
            Path path = Paths.get(UPLOADED_FOLDER + file.getOriginalFilename());
            Files.write(path, bytes);
            logger.info("You have successfully uploaded '" + file.getOriginalFilename() + "'");
            return("File Uploaded");


    } catch (Exception e) {
        res.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
        logger.error("Failed to upload file '" + file.getOriginalFilename() + "'", e);
        return("File Not Uploaded");
    }
}
错误日志:

2017-04-10 10:30:09.758 DEBUG o.s.web.servlet.DispatcherServlet.976 - Could not complete request 
java.lang.IllegalArgumentException: Expected MultipartHttpServletRequest: is a MultipartResolver configured?
    at org.springframework.util.Assert.notNull(Assert.java:112) ~[spring-core-3.2.8.RELEASE.jar:3.2.8.RELEASE]

有人能看到我缺少什么吗?

请显示您的配置。@Bean(name=“multipartResolver”)public commons多部分解析器commons多部分解析器commonmultipartresolver(){commonmultipartresolver commonmultipartresolver=new commonmultipartresolver();commonmultipartresolver.setDefaultEncoding(“utf-8”);commonMultipartResolver.setMaxUploadSize(50000000);return commonMultipartResolver;}}2017-04-10 11:07:56.021 DEBUG o.s.web.servlet.DispatcherServlet.976-无法完成请求org.springframework.web.multipart.MultipartException:无法解析多部分servlet请求;嵌套的异常是org.apache.commons.fileupload.FileUploadException:请求被拒绝,因为在org.springframework.web.multipart.commons.commonmultipartresolver.parseRequest(commonmultipartresolver.java:163)~[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE]@alfcope是否对配置提供了上述帮助?您的请求似乎有误。应ajax请求,将
contentType
设置为false。看看这个答案