【问题标题】:RichFaces and JSF: Where does the fileUpload component upload files?RichFaces 和 JSF:fileUpload 组件在哪里上传文件?
【发布时间】:2010-06-23 20:17:53
【问题描述】:

我正在尝试使用this fileUpload component example 来处理我自己的项目。但是,每当我上传一些东西时,它都会说它上传并成功完成,但我不知道它在服务器上的位置。我使用 Windows 搜索功能来查找我刚刚上传的文件的文件名,但它没有返回任何内容。

根据this page,该文件应该存储在某个临时文件中,但是扫描整个服务器(再次使用 Windows 搜索程序)却一无所获。如果有帮助,我正在使用 Oracle WebLogic。

我怎样才能知道上传的文件发生了什么?

【问题讨论】:

    标签: java jsf richfaces


    【解决方案1】:

    来自链接页面:

    FileUpload 使用了两个初始化参数,应该在 web.xml 的过滤器定义中定义:

    • createTempFiles 布尔属性,它定义上传的文件是存储在临时文件中还是在侦听器中可用,就像byte[] 数据一样(本例为false)。

    因此,链接代码示例以byte[] 的形式将其存储在服务器内存中。您应该使用FileOutputStream 将其写入文件自己。如果将createTempFiles设置为true,则可以通过org.richfaces.model.UploadItem#getFile()获得一个完整的java.io.File对象,该对象又提供了揭示实际路径的方法,例如File#getAbsolutePath()

    无论如何,我建议将其设置为true。来自多个用户的大量并发上传可能会导致 OutOfMemoryExceptions 否则。您不希望在生产中使用它。

    【讨论】:

      猜你喜欢
      • 2023-03-04
      • 2014-06-16
      • 1970-01-01
      • 2013-09-29
      • 2012-03-24
      • 1970-01-01
      • 2011-11-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多