【问题标题】:upload.parseRequest(request) returns empty list in commons.fileUploadupload.parseRequest(request) 在 commons.fileUpload 中返回空列表
【发布时间】:2010-08-17 04:44:43
【问题描述】:

我正在使用org.apache.commons.fileUpload.FileItem 和其他相关类将文件从本地机器上传到服务器(尽管对于当前测试,两台机器都是相同的)。

我有 .jsp 文件作为 UI 和 servlet 来处理上传。现在当请求到达 声明

List items = upload.parseRequest(request);

它返回空列表。我在很多地方搜索过这个东西。他们中的大多数指定parserequest() 返回空的症状。但是找不到避免这种情况的确切解决方案。在一个地方,我可以看到 Tomcat 可能有过滤器,这些过滤器可能已经解析了请求,这就是为什么在上面对 parseRequest 的调用返回空列表的原因。但是没有规范如何避免这种情况。

是因为我使用的网络服务器(JBOss)吗?还是跟java版本和commons.jar版本冲突有关系?

我正在使用

  • jre 1.6
  • jboss-4.0.4.CR2
  • commons-fileupload-1.2.2.jar
  • Eclipse(创建动态 Web 项目)

您的帮助将非常有用。

【问题讨论】:

标签: java apache-commons-fileupload jboss-4.0.x


【解决方案1】:

我在 Tomcat 中进行类似设置时遇到了同样的问题。解决方案就像在我的输入文件元素上放置一个名称属性一样简单。

在我的 HTML 表单中有 <input type="file" /> 之前。

一旦我添加了一个名称标签,即<input type="file" name="aFile" />,当我从 servlet/JSP 调用 parseRequest(request) 时,我的 DiskFileUpload 对象停止返回一个空列表。

【讨论】:

  • 我遇到了类似的问题,我使用的是 GXT 组件。我将名称添加到uploadfileField,它按你说的那样工作。谢谢!
  • 这对我没有帮助,你也忘了添加 multiple 属性:<input type="file" name="aFile" multiple="true" />,但即使我看到了在 Chrome 网络中正确上传的文件,我还是得到了一个空列表检查员。有什么办法解决这个问题?
  • 拯救了我的一天!谢谢!
【解决方案2】:

我正在使用 jboss 5.1 并且使用 commons-fileupload 库没有问题。 确保您拥有正确版本的 jboss 4.0.4 (jre 1.6),因为它可能只支持 jre 1.5。如果需要 1.6 或将 jre 更改为 1.5,您可能需要考虑升级到下一个版本。

您应该发布更多的 java 和 JSP 代码,以便我们可以看到您是如何发布请求的。 祝你好运

【讨论】:

    猜你喜欢
    • 2012-12-02
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    • 2021-08-12
    • 1970-01-01
    • 1970-01-01
    • 2019-08-18
    • 2021-03-11
    相关资源
    最近更新 更多