程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了JSP-使用Apache Commons上传文件大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决JSP-使用Apache Commons上传文件?

开发过程中遇到JSP-使用Apache Commons上传文件的问题如何解决?下面主要结合日常开发的经验,给出你关于JSP-使用Apache Commons上传文件的解决方法建议,希望对你解决JSP-使用Apache Commons上传文件有所启发或帮助;

因为commons-fileupload依赖于commons-io。将其添加到您的类路径。

解决方法

为什么我的文件上传代码不起作用?

我正在使用“ commons-fileupload-1.1.1.jar”。

另外,我在NetBeans 6.1的“ isMultipartContent”的第二行中看到一条删除线。

    // check that we have a file upload request  
>>>>    Boolean isMultipart = FileUpload.isMultipartContent(request);

// Create variables for path,filename and extension  
appPath = application.getRealPath("\\");

// Create a factory for disk-based file items  
FileItemFactory factory = new DiskFileItemFactory();

// Create a new file upload handler  
ServletFileUpload upload = new ServletFileUpload(factory);

// Parse the request and Extract request items  
>>>>>    List items = upload.parserequest(request);

// create an Iterator to iterate through request items  
Iterator iter = items.iterator();

//Form fields
//out.println("<br><br>While loop started");

while (iter.hasNext())
{  
  FileItem item = (FileItem) iter.next();

  if(item.isFormField())
  {
    String name = item.getFieldName();  
    String value = item.getString();

    if(name.equals("txtUsername")) 
    {
      _USERNAME_ = value;

      Class.forName("org.gjt.mm.mysql.Driver");

      try
      {
        connection = DriveRMANager.getConnection("jdbc:mysql://localhost/ict");
        statement = connection.createStatement();
        recordset = statement.executeQuery("SELECT * FROM registered_students WHERE username=\'" + _USERNAME_ + "\'");

        while(recordset.next())
        {
          roll = recordset.getString(4);

          _ROLL_ = roll;
        }

        recordset.close();
        recordset=null;

        statement.close();
        statement=null;
      }
      finally
      {
        if(connection!=null)
        {
          connection.close();
        }
      }
    }
  }
}

我收到此消息:

org.apache.jasper.JasperException: An exception occurred processing JSP page /Process_FileUpload.jsp at line 75

73: 
74:         // Parse the request and Extract request items  
75:         List items = upload.parserequest(request);  
76:         
77: 
78:         // create an Iterator to iterate through request items  
79:         Iterator iter = items.iterator();

Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.httpServlet.service(httpServlet.java:803)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

root cause

javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFiLeoutputStream
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
    org.apache.jsp.process_005fFileUpload_jsp._jspservice(Process_005fFileUpload_jsp.java:546)
    org.apache.jasper.runtime.httpJspBase.service(httpJspBase.java:70)
    javax.servlet.http.httpServlet.service(httpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.httpServlet.service(httpServlet.java:803)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

root cause

java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFiLeoutputStream
    org.apache.commons.fileupload.disk.DiskFileItemFactory.createItem(DiskFileItemFactory.java:179)
    org.apache.commons.fileupload.FileUploadBase.createItem(FileUploadBase.java:500)
    org.apache.commons.fileupload.FileUploadBase.parserequest(FileUploadBase.java:367)
    org.apache.commons.fileupload.servlet.ServletFileUpload.parserequest(ServletFileUpload.java:116)
    org.apache.jsp.process_005fFileUpload_jsp._jspservice(Process_005fFileUpload_jsp.java:138)
    org.apache.jasper.runtime.httpJspBase.service(httpJspBase.java:70)
    javax.servlet.http.httpServlet.service(httpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.httpServlet.service(httpServlet.java:803)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

note The full stack trace of the root cause is available in the Apache tomcat/6.0.16 logs.

大佬总结

以上是大佬教程为你收集整理的JSP-使用Apache Commons上传文件全部内容,希望文章能够帮你解决JSP-使用Apache Commons上传文件所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。