springmvc上传附件出现异常Expected MultipartHttpServletRequest: is a MultipartResolver configured?

来源:互联网 发布:网龙网络开发怎么样 编辑:程序博客网 时间:2024/06/05 16:10
异常及解决方案:java.lang.IllegalArgumentException: Expected MultipartHttpServletRequest: is a MultipartResolver configured?    at org.springframework.util.Assert.notNull(Assert.java:112)    at org.springframework.web.method.annotation.RequestParamMethodArgumentResolver.resolveName(RequestParamMethodArgumentResolver.java:151)    at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:86)    ...    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)    at java.lang.Thread.run(Thread.java:662)

解决方法:

spring mvc中上传附件,需要做两步操作

  1. 引入包commons-fileupload-1.3.jar,版本号可以根据项目情况调整;
  2. 在spring mvc配置文件中增加配置,文件大小限制可根据项目情况调整:
    <!-- 上传文件拦截,设置最大上传文件大小   10M=10*1024*1024(B)=10485760 bytes -->  <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">      <property name="maxUploadSize" value="10485760" />  </bean>
  3. 此处我的错误是将bean中的id写成了
    commonsMultipartResolver
  4. id="multipartResolver",这个不能省略,而且名字不能改,否则spring容器找不到。
0 0
原创粉丝点击