spring mvc 上传图片问题

后台:
@RequestMapping(method = RequestMethod.POST,params="picture")
public @ResponseBody String updateLoad(@RequestParam(value = "file") MultipartFile file) {
String filePath = request.getSession().getServletContext().getRealPath("/") + java.io.File.separator + AppConstants.PICTURE_PLACE;

    String name = FileUtil.saveFile(file, filePath);
    return name;
}

前台:

  <form id="imageUploadForm"  action='coupon?picture' method="post" enctype='multipart/form-data'>
                                <input type="file" name="file" class="default" />
                                <input type="submit" value="upload" />
            </form>    

报错:Required MultipartFile parameter 'file' is not present,怎么改能不报错,并且传过来的file 不为null

图片说明
图片说明
图片说明

你表单的action后面的问号什么意思啊

 public @ResponseBody String updateLoad(@RequestParam(value = "file") MultipartFile file)

改为

 public @ResponseBody String updateLoad(@RequestParam MultipartFile file)

MultipartFile 需要转为File类型的啊,给段代码你参考哈
@Controller

public class UploadAction {

@RequestMapping(value = "/upload.do")  
public String upload(@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request, ModelMap model) {  

    System.out.println("开始");  
    String path = request.getSession().getServletContext().getRealPath("upload");  
    String fileName = file.getOriginalFilename();  

// String fileName = new Date().getTime()+".jpg";

System.out.println(path);

File targetFile = new File(path, fileName);

if(!targetFile.exists()){

targetFile.mkdirs();

}

    //保存  
    try {  
        file.transferTo(targetFile);  
    } catch (Exception e) {  
        e.printStackTrace();  
    }  
    model.addAttribute("fileUrl", request.getContextPath()+"/upload/"+fileName);  

    return "result";  
}  

}