我有一个struts应用程序迁移到Spring mvc版本4.3.16 . 我有一个enctype =“multipart / form-data”的表单 . 表单上有多个按钮,用于显示文件列表,删除文件,添加组等,还有文件上载功能 . 所有这些都是相同的形式 . 问题是当我尝试在提交表单时从动作类转换为控制器,即按下任何按钮(如显示列表或删除此文件)时,弹出映射不会被调用 . 以下是更好理解的代码段 .

形式的id = “MainForm的” 行动= “$ {的contextPath} / mySpringUrl” 方法= “POST” 的ModelAttribute = “MainForm的” ENCTYPE = “多部分/格式数据”>按钮styleId = “showFiles” buttonText = “SHOW” Headers = “显示文件”onclick =“displayFiles();”

displayFiles() - >这会提交mainForm以从服务器获取文件列表 .

然后有一个ADD FILE按钮打开一个jquery对话框,我们有输入type =“file”html标签 . 和相应的上传文件按钮 .

控制器方法

@RequestMapping(值= { “/模块/ ManageResource”},方法= RequestMethod.POST)公共的ModelAndView manageResource(@ModelAttribute( “MainForm的”)ResourceManageForm形式,HttpServletRequest的请求,响应HttpServletResponse的)抛出IOException异常

我的问题是如果我点击SHOW Files按钮获取文件列表或删除文件按钮,几乎任何按钮都比我得到404错误(PAGE NOT FOUND) . 由于某种原因,JBOSS服务器没有记录任何内容,控件不会传递给映射到映射的控制器方法 . 我尝试在spring配置文件中使用CommonMultipartResolver bean配置以及apache commons-fileupload,但它仍然提供404错误 .

如果我从我的表单中删除enctype =“multipart / formdata”的东西,并尝试是,我能够到达控制器,并在UI上查看文件列表 . 这看起来很有趣,但我被困住了 . 任何帮助?????