首页 / SERVLET / springboot 使用multipartFile上传文件,报错java.lang.IllegalArgumentException: Expected MultipartHttpServletRe
springboot 使用multipartFile上传文件,报错java.lang.IllegalArgumentException: Expected MultipartHttpServletRe
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了springboot 使用multipartFile上传文件,报错java.lang.IllegalArgumentException: Expected MultipartHttpServletRe,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1634字,纯文字阅读大概需要3分钟。
内容图文
![springboot 使用multipartFile上传文件,报错java.lang.IllegalArgumentException: Expected MultipartHttpServletRe](/upload/InfoBanner/zyjiaocheng/742/7315132174064e9e9b13ffbc81bf5a14.jpg)
问题重现:
springboot项目本地运行正常,上传文件正常;打war包后,部署weblogic后不能正常访问,上传选择文件后点击确认页面提示“Expected MultipartHttpServletRequest: is a MultipartResolver configured?” 后台报错
问题分析:
因为找不到multipartReslover的原因,在springMVC配置文件配置它的时候,不能用其他名字,只能用指定名字,否则就出现这种找不到的错误
springboot项目是有自动配置的自动配置类为:MultipartAutoConfiguration
@Bean(
name = {"multipartResolver"}
)
@ConditionalOnMissingBean({MultipartResolver.class})
public StandardServletMultipartResolver multipartResolver() {
return new StandardServletMultipartResolver();
}
代码可以看出配置的multipartResoler并没有问题,问题在由默认配置使用的是StandardServletMultipartResolver,而项目需要部署到11G的weblogic上,servlet的版本是2.5,是只能使用commons-fileupload。maven配置如下,这样就有问题了,部署到weblogic上后使用的就不再是StandardServletMultipartResolver,而是CommonsMultipartResolver
<!--使用multipartFile上传,需要引这两个包-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
解决方法:
定义一个multipartResoler的Bean替换自动配置中的Bean
代码如下:
@Bean
public CommonsMultipartResolver multipartResolver() {
CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver();
multipartResolver.setDefaultEncoding("UTF-8");
multipartResolver.setMaxUploadSize(104857600);
return multipartResolver;
}
注意配置此Bean必须在有注解@Configuration的类中,我这里直接将此Bean配置到启动类XxxxxxApplication中.
内容总结
以上是互联网集市为您收集整理的springboot 使用multipartFile上传文件,报错java.lang.IllegalArgumentException: Expected MultipartHttpServletRe全部内容,希望文章能够帮你解决springboot 使用multipartFile上传文件,报错java.lang.IllegalArgumentException: Expected MultipartHttpServletRe所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。