使用Spring MultipartFile和谷歌应用引擎上传文件
我一直在尝试使用MVC和Google App引擎上传文件。 每次我收到错误之类的
预期的MultipartHttpServletRequest:是否配置了MultipartResolver?
之后我提到了两个教程来上传文件。 每次流程转到控制器,但能够访问使用Spring MVC和Google App引擎在jsp文件中上传的MultipartFile文件。 这两个参考是
http://alasdoo.com/2010/10/how-to-upload-a-file-with-spring-mvc-3-and-google-app-engine/
https://code.google.com/p/gmultipart/
所以任何人都可以指导我解决问题的参考文献中的错误。
以下方法将返回您需要发布文件的回调URL。
上传url方法
@RequestMapping(value = "/uploadurl", method = RequestMethod.GET) public String getImageUploadUrl() { modelMap.addAttribute('uploadUrl',blobstoreService.createUploadUrl("/imageupload)); return "upload"; }
以下是您将嵌入代码的JSP片段。 我正在使用JSTL将URL放在表单标记中。
JSP页面
上传处理程序方法
@ResponseBody @RequestMapping(value = "/imageupload", method = RequestMethod.POST) public void getUploadedImagesUrls(HttpServletRequest request){ Map> blobs = blobstoreService.getUploads(request); List blobKeys = blobs.get("myFile[]"); if (blobKeys == null) { return null; } else { for(BlobKey blobKey : blobKeys){ // ImagesService services = ImagesServiceFactory.getImagesService(); // ServingUrlOptions serve = ServingUrlOptions.Builder.withBlobKey(blobKey); // String imageUrl = services.getServingUrl(serve); BlobInfoFactory blobInfoFactory = new BlobInfoFactory(); BlobInfo info = blobInfoFactory.loadBlobInfo(blobKey); System.out.println("Image URL : "+imageUrl); System.out.println("Image FileName : "+info.getFilename()); } } }