Struts2上传文件异常
2013-10-14 21:57
363 查看
Struts2上传文件异常: java.lang.RuntimeException: Unable to load bean org.apache.struts2.dispatcher.multipart.MultiPartRequest
(jakarta
分类: Struts22008-11-0713:58 2855人阅读 评论(2) 收藏 举报
strutsbeanjar框架filter测试
在测试Struts2权威指南介绍的struts2文件上传,发现如下异常:
java.lang.RuntimeException: Unable to load bean org.apache.struts2.dispatcher.multipart.MultiPartRequest (jakarta) - [unknown location]
...........................
再回去仔细看该章节,发现是自己粗心了,忘记加所需要的两个除struts2外的jar文件.所加jar文件所图所示:
Struts2默认使用的是Jakarta的Common-FileUpload的文件上传框架,而struts2的filter拦截了上传文件的动作,拦截器代码是这样写的:
//org.apache.struts2.dispatcher.Dispatcher.java
public HttpServletRequest wrapRequest(HttpServletRequest request, ServletContext servletContext) throws IOException {
// don't wrap more than once
if (request instanceof StrutsRequestWrapper) {
return request;
}
String content_type = request.getContentType();
if (content_type != null && content_type.indexOf("multipart/form-data") != -1) {
MultiPartRequest multi = getContainer().getInstance(MultiPartRequest.class);
request = new MultiPartRequestWrapper(multi, request, getSaveDir(servletContext));
} else {
request = new StrutsRequestWrapper(request);
}
return request;
}
注意MultiPartRequest multi = getContainer().getInstance(MultiPartRequest.class);这句是上传文件时拦截器实现所需要的,出错的原因是所不到MultiPartRequest.class的实现类.这个类在上传框架jar文件中.这是文件上传fileupload解析器。
因此,如果需要使用Struts2的文件上传功能,则需要在web应用中增加两个JAR文件,即commons-io-1.4.jar和commons-fileupload-1.2.1.jar。将这个包或是包的最新版本放在工程的lib目录下,即解决以上异常问题,成功实现文件的上传.
相关文章推荐
- struts2 使用 jakarta 上传文件时commons fileupload的异常捕捉(转自alfred.w)
- 异常选择struts2文件上传产生Source 'xxxx.tmp' does not exist
- SSH2中使用Struts2中的组件来上传文件出现文件上传后变得异常大的情况
- Struts2文件上传,以及上传拦截异常国际化处理
- struts2 使用 jakarta 上传文件时commons fileupload的异常捕捉
- Struts2文件上传,以及上传拦截异常国际化处理
- struts2 同时上传多个文件的奇怪异常
- Struts2 commons-fileupload 在上传2M以上文件出现异常解决方法
- springMVC高级部分(数据校验,数据错误回显(自定义格式错误显示),拦截器,异常处理,文件上传,文件下载,springmvc运行流程以及springmvc和struts2对比)
- Struts2实现文件上传,直接访问JSP页面出现异常
- Struts2上传文件异常: java.lang.RuntimeException: Unable to load bean org.apache.struts2.dispatcher.multipart.MultiPartRequest (jakarta
- 【Struts2实现文件上传】struts2上传文件异常总结及解决方式
- Struts2文件上传大小限制
- struts2文件上传,以及大文件上传(引致张孝祥视频讲座)
- struts2文件上传如何限制上传文件类型(类型列表)
- struts2文件的上传与下载
- UEditor上传文件IO异常
- struts2文件上传下载
- struts2文件上传时 上传的文件不能为空
- struts2中的文件上传实现