论坛首页 Java企业应用论坛

为什么我的webwork上传总是出错啊?

浏览 5701 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-09-06  
本来都成功了,不知道什么原因又不行了,老是报错,
感觉是包的问题,但我不知道该导入哪些包
出错信息如下
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/servlet/ServletFileUpload
	at java.lang.Class.getDeclaredConstructors0(Native Method);
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328);
	at java.lang.Class.getConstructor0(Class.java:2640);
	at java.lang.Class.getDeclaredConstructor(Class.java:1953);
	at com.opensymphony.webwork.dispatcher.multipart.MultiPartRequestWrapper.(MultiPartRequestWrapper.java:89);
	at com.opensymphony.webwork.dispatcher.DispatcherUtils.wrapRequest(DispatcherUtils.java:432);
	at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:104);
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853);
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247);
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193);
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256);
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643);
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480);
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995);
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191);
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643);
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480);
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995);
	at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415);
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180);
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643);
	at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171);
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641);
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172);
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641);
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480);
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995);
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174);
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643);
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480);
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995);
	at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223);
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594);
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392);
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565);
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619);
	at java.lang.Thread.run(Thread.java:595);



   发表时间:2006-09-06  
你先看看你的包是不是引入了,我看是没有找到这个java类ServletFileUpload,上传是需要commons-fileupload.jar
0 请登录后投票
   发表时间:2006-09-06  
可是我已经把包都拷到lib下了啊
0 请登录后投票
   发表时间:2006-09-06  
copy了但是还要引用(如果你用的ide编辑)。不知道你引用了没有。你把webwork自带的那些包都引用试试。
0 请登录后投票
   发表时间:2006-09-06  
我用的eclipse,我从tomcat下看了,web-inf/lib/下包都在,
55~~~~~~~,急死我了,
都搞烦死了

我试过了,把commons-fileupload.jar删掉后,它报这个错:

java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUploadException

加上了就报这个错
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/servlet/ServletFileUpload

奇怪的是,之前我乱搞一通,还成功了,可后来不知道为什么报了一次javac不能编译,就再也不行了。
我用的webwork是2.2.2版的,而上传的是2.1.7版的
会不会是版本的问题啊?
0 请登录后投票
   发表时间:2006-09-06  
我下的例子上午还是好的,可下午不知道为什么都不能编译了
奇怪的是我别的web项目是正常的
description The server encountered an internal error (); that prevented it from fulfilling this request.

exception 

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: -1 in the jsp file: null

Generated servlet error:
    [javac] Since fork is true, ignoring compiler setting.
    [javac] Compiling 1 source file
    [javac] Since fork is true, ignoring compiler setting.
    [javac] javac: 无效的标志: D:\Program
    [javac] 用法:javac <选项> <源文件>
    [javac] 其中,可能的选项包括:
    [javac]   -g                         生成所有调试信息
    [javac]   -g:none                    不生成任何调试信息
    [javac]   -g:{lines,vars,source}     只生成某些调试信息
    [javac]   -nowarn                    不生成任何警告
    [javac]   -verbose                   输出有关编译器正在执行的操作的消息
    [javac]   -deprecation               输出使用已过时的 API 的源位置
    [javac]   -classpath <路径>            指定查找用户类文件的位置
    [javac]   -cp <路径>                   指定查找用户类文件的位置
    [javac]   -sourcepath <路径>           指定查找输入源文件的位置
    [javac]   -bootclasspath <路径>        覆盖引导类文件的位置
    [javac]   -extdirs <目录>              覆盖安装的扩展目录的位置
    [javac]   -endorseddirs <目录>         覆盖签名的标准路径的位置
    [javac]   -d <目录>                    指定存放生成的类文件的位置
    [javac]   -encoding <编码>             指定源文件使用的字符编码
    [javac]   -source <版本>               提供与指定版本的源兼容性
    [javac]   -target <版本>               生成特定 VM 版本的类文件
    [javac]   -version                   版本信息
    [javac]   -help                      输出标准选项的提要
    [javac]   -X                         输出非标准选项的提要
    [javac]   -J<标志>                     直接将 <标志> 传递给运行时系统


我用的是tomcat4.1+jdk1.5
0 请登录后投票
   发表时间:2006-09-06  
你用的tomcat插件么,你试试把work目录删除重新编译一遍试试。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics