我正在尝试使用Spring CommonsMultipartResolver上传文件,但无法识别控制器。我收到此错误消息:“请求的资源(/WebIDE/WEB-INF/views/file/upload.jsp)不可用。”
我在我的库中添加了commons-fileupload-1.2.2.jar和commons-io.1.3.2.jar。我在我的应用程序上下文中添加了以下内容:
<context:component-scan base-package="org.webide.mvc" />
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- specify maximum file size in bytes -->
<property name="maxUploadSize" value="100000"/>
</bean>
我正在使用Pojo作为我的控制器:
@Controller
@RequestMapping (value = "/file")
public class FileController {
@RequestMapping (value = "/upload")
public String uploadFile(@RequestParam("file") CommonsMultipartFile file){
if (!file.isEmpty()){
byte fileBytes[] = file.getBytes();
return "mainView";
}else{
return "errorView";
}
}
我的HTML现在非常简单:
<form method="post" action="file/upload" enctype="multipart/form-data">
<input type="text" name="name"/>
<input type="file" name="file"/>
<input type="submit"/>
</form>
如果我遗失了什么,能告诉我吗? 感谢
答案 0 :(得分:0)
主网址为http://localhost:8084/WebIDE/,然后action =“/ file / upload”应该向使用@Controller标记的类发送请求。我放了一个断点,它根本没有拿起控制器。
我必须更改spring配置,将应用程序上下文中指定的所有内容(见上文)复制到调度程序servlet mvc-config.xml,并更改我声明它们的方式,以便上下文是mvc-config的父级.XML
看起来这样做了! :)
再次感谢您的帮助和建议。