CentOS6.6
OpenJDK1.7.0.79.x86_64
Apache Tomcat/8.0.21
commons-fileupload-1.3.1
Eclipse:Luna Service Release 2 (4.4.2)
处理上传的代码:
doPost(xxx){
if(!ServletFileUpload.isMultipartContent(request)){
return;
}
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload();
upload.setFileItemFactory(factory); //此句有问题
}
现象:只要upload.setFileItemFactory(factory);这句参加编译(编译可以通过),在tomcat管理界面 (Tomcat Web Application Manager)去Reload(或Start)此工程,此工程就会加载失败。将此句去掉,则加载成 功。
应该从何处入手解决此问题?
查tomcat日志
tomcat日志文件在哪:tomcat/logs
按时间查到最后错误日志,定位到错误行:
Caused by: java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
在Eclipse的Libraries里是有这个类的。去工程/lib文件夹下查看,找不到“commons-fileupload-1.3.1.jar"这个包。复制进去,tomcat重新start此工程,成功。

本文介绍了一种在使用Eclipse部署项目到Tomcat时遇到的应用加载失败的问题及其解决过程。通过检查日志发现ClassNotFoundException异常,最终定位到缺失的commons-fileupload-1.3.1.jar包,并成功解决了问题。
1394

被折叠的 条评论
为什么被折叠?



