2012-12-18 78 views
1

我使用AJAX使用下面的代碼上傳文件中的Ajax Spring MVC中不工作

var formData = new FormData();  
formData.append('file', file); 

    $.ajax({ 
     url: url, 
     data: formData, 
     cache: false, 
     contentType: false, 
     processData: false, 
     type: 'POST', 
    }); 

我可以看到在HTTP POST我的數據,Spring MVC的控制器上載文件,但我得到的控制器空值。

@RequestMapping(value = { "/file.htm" }, method = RequestMethod.POST) 

    public @ResponseBody String upload(@RequestParam(value="file",required=false) CommonsMultipartFile file 

      ) throws IOException { 

     String response=""; 
} 

我也試過MultipartFile也。我甚至試圖使用MultipartHttpServletRequest並試圖從請求中獲取數據,但無法獲取它。請讓我知道如何解決它。由於

回答

1

嘗試使用@RequestPart代替@RequestParam

+0

它仍然是空.. – SDC

+0

我仍然可以看到螢火蟲console..but參數「文件」的價值仍然是後期數據NULL在控制器..我掙扎着這2天。請幫忙.. – SDC

1
var fd = new FormData(); 
fd.append("file", $("input[name=file]").files[0]); 

var ajaxReq = $.ajax({ 
    url : 'kolfileUpload', 
    type : 'POST', 
    data : fd, 
    cache : false, 
    contentType : false, 
    processData : false, 

}); 
+0

儘管這段代碼可能會回答這個問題,但提供關於爲什麼和/或代碼如何回答這個問題的附加上下文會提高它的長期價值。 – adiga