我下载了jspSmartUpload这个组件。为什么每次在执行save方法的时候都要出错
SmartUpload su = new SmartUpload();
su.upload();
su.save("/upload");  
//就这一句有异常,用su.save("/upload",SmartUpload.SAVE_PHYSICAL)也是一样的

解决方案 »

  1.   

    com.jspsmart.upload.SmartUpload upload=new com.jspsmart.upload.SmartUpload();
    upload.initialize(pageContext);
    upload.upload();
    com.jspsmart.upload.File myFile = upload.getFiles().getFile(0);
    String strFileName = myFile.getFileName();
    String abspath =request.getRealPath("/")+"/upload/"+strFileName;
    myFile.saveAs(abspath);
      

  2.   

    我用的Servlet。初始化怎么得到pageContext
      

  3.   

    每次都出这个异常
    java.lang.IllegalArgumentException: This path does not exist (1135).
    at com.jspsmart.upload.SmartUpload.getPhysicalPath(SmartUpload.java:1089)
    at com.jspsmart.upload.File.saveAs(File.java:91)
    at com.jspsmart.upload.File.saveAs(File.java:65)
    at files.Servlet.doPost(Servlet.java:43)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:595)
      

  4.   

    Servlet 中初始化
    mySmartUpload.initialize(this.getServletConfig(), request,response); This path does not exist 
    就是你写的路径不对 
    改成“c:/”测试一下
      

  5.   

    还是不行哦。我想放在web工作目录下面,都报这个异常
      

  6.   

    java.lang.IllegalArgumentException: This path does not exist (1135).
    提示是你的路径不存在,好好检查一下吧
    su.save("/upload"); 
    你要在项目下建个文件夹upload
      

  7.   

    如果你要放在web目录下就这样写
    String abspath =request.getRealPath("/")+"/upload/"+strFileName;
    你可以打印出这个路径,检查这个路径是否存在
      

  8.   

    我用的japSmartUpload
    从jsp页面请求Servlet,我jsp页面的form
    <form action="servlet" method="post" ENCTYPE="multipart/form-data">
    Servlet不能取得request必须要用 SmartUpload su = new SmartUpload ();
    su.getRequest();取得request而这个request没有getRealPath这个方法
      

  9.   

    不用SmartUpload.getRequest()的request
    就用你doPost或者doGet 传进来的requst 调用getRealPath