JSP - 使用 Apache Commons 上传文件

2023-11-21

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

我正在使用“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.

因为 commons-fileupload 依赖于公共IO。将其添加到您的类路径中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSP - 使用 Apache Commons 上传文件 的相关文章

随机推荐

  • Android 上的方位角/偏航角和滚动角方向传感器值不一致

    我无法获得良好的方向传感器读数 传感器读数似乎不可靠 因此我针对两个免费的传感器测试应用程序测试了我的代码 传感器测试仪 Dicotomica and 传感器监控 R 的软件 我发现 虽然我的读数通常与传感器测试应用程序一致 但有时方位角
  • XFetchName 始终返回 0

    我试图编写一个 C 代码来获取 Linux 系统中活动窗口的标题 但函数 XFetchName 总是返回零 我也尝试过 XGetWMName 相同的结果 但是使用 xprop 我可以看到 WM NAME 属性中有一个字符串 谁能告诉我我的代
  • Magento:如何将配置更改从开发环境迁移到生产环境?

    我们正在积极开发模块 当我们将更改推送到生产站点时 通常需要进行多项配置更改 自动化这个 想法会很好吗 不确定它是否仍然是实际的 但如果您的意思是对系统 gt 配置进行更改 那么使用此类 config xml 节点而不是编写数据库升级要好得
  • Spring Boot 与 AngularJS html5Mode

    我使用 Spring Boot 启动我的 Web 应用程序 它使用一个简单的主类来启动嵌入式 tomcat 服务器 Configuration EnableAutoConfiguration ComponentScan public cla
  • 如何以编程方式设置新的 Woocommerce 产品创建的类别?

    这里提出的解决方案允许我轻松地为 WordPress 帖子创建 类别 Check if category already exists cat ID get cat ID category If it doesn t exist creat
  • FileStream.BeginWrite 相对于 FileStream.Write 的优势?

    我需要对同一个文件进行批量写入 但在文件中的不同位置 我希望以尽可能最佳的性能来实现这一点 因此研究了同步 FileStream Write 和异步 FileStream BeginWrite 方法 同步实现很简单 只需在循环中调用 Fil
  • 如何声明具有变量泛型的映射?

    我有一个Map其键是泛型类型Key
  • 如何在 Angular 2 的组件中使用管道?

    我有一个管道类 它根据您传递的参数返回数据 我知道如何在我的 HTML 模板中使用它 符号 但我也想在我的组件中使用它 有没有办法直接从 Angular 2 中的组件或服务内部调用管道 您可以使用以下命令直接在代码中调用管道 YourPip
  • 重新加载完成时的 jqgrid 事件?

    我正在使用jqgrid 我可以看到我有多少行 如下所示 grid getGridParam records 我可以像这样重新加载一些不同的数据 grid trigger reloadGrid 但是 一旦我触发重新加载 我如何知道它何时完成加
  • 如何在 sqlite where 子句中使用编辑距离函数?

    我正在尝试实现 你是说吗 一种搜索功能 我正在尝试执行一个使用 levenshtein 函数的查询 该函数是用 ruby 编写的 我想知道如何在 sqlite3 查询中使用这个函数 我想这可能是这样的 results the db wher
  • PostgreSQL 日期差异

    我有一个计算日期差的 PostgreSQL 函数 CREATE OR REPLACE FUNCTION testDateDiff RETURNS int AS BODY DECLARE startDate TIMESTAMP DECLARE
  • 将外部资源文件夹添加到 Spring Boot

    我想添加一个相对于 jar 位置的资源文件夹 除了我的 jar 中的打包资源之外 例如 Directory Application jar resources test txt 我尝试过以下方法 Override public void a
  • ILogger 不尊重 Application Insights 的日志级别

    我一直在尝试使用 ASP NET Core 2 0 应用程序设置 Application Insights 在本地运行我的应用程序时 日志按预期显示在 Application Insights 中 但是 当部署到 Azure 应用服务时 虽
  • 使用 Prophet 时,“StanModel”对象没有属性“fit_class”

    我正在尝试使用先知 我已经安装了所有必需的软件包 pip install pandas numpy jupyterlab seaborn conda install pywin32 conda install c anaconda pyst
  • Delphi 2010 密码学库 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 你能推荐一个开源的 Delphi 加密库吗 德尔福 2006 德尔福 2009 和德尔福 2010 算法需要 DES MD5 SHA 1 以下是我在
  • 我应该使用属性还是 getter 和 setter?

    我知道在 python 中使用 getter 和 setter 不是 pythonic 相反 应该使用属性装饰器 但我想知道以下场景 我有一个使用一些实例属性初始化的类 然后我需要向类添加其他实例属性 如果我不使用设置器 那么我必须写obj
  • Javascript:如何转换数组?

    我在 javascript var 上有这个 这是一个 http 返回的数据 我不知道它是数组还是字符串 我们如何才能看到它 更新 使用 typeof 返回 字符串 所以它是一个字符串 nomeDominio gggg fa nomeDom
  • ImageMagick 或 GhostScript:将多页 TIFF 转换为多页 PDF

    我需要将多页 TIFF 转换为多页 PDF 我可以访问 ImageMagick 和 GhostScript 在 nix 环境中 我该怎么做呢 谢谢 UPDATE 事实证明我的测试文件是错误的 它没有多个页面 这让我认为我的命令是错误的 这似
  • Postgres 视图的 Django 模型

    Edit 我的要求似乎有些混乱 该模型适用于Postgres 视图我在迁移 0009 中创建的 我的印象是 Django 不会为模型生成迁移 如果它具有managed False选项 然而 它仍在尝试创建它 另外 我使用 Django 1
  • JSP - 使用 Apache Commons 上传文件

    为什么我的文件上传代码不起作用 我正在使用 commons fileupload 1 1 1 jar 另外 我在 NetBeans 6 1 中的 isMultipartContent 第二行中看到了删除线 Check that we hav