RichFaces和JSF:fileUpload组件在哪里上传文件?

时间:2010-06-23 20:17:53

标签: java jsf richfaces

我正在尝试使用this fileUpload component example在我自己的项目中工作。但是,无论何时我上传某些内容,它都表示上传并成功完成,但我不知道它在服务器上的位置。我使用Windows搜索功能查找刚刚上传的文件的文件名,但它不会返回任何内容。

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

如何查看上传文件的内容?

1 个答案:

答案 0 :(得分:6)

从链接页面:

  

FileUpload使用两个init参数,这些参数应在web.xml中的Filter定义中定义:

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

因此,链接代码示例将其以byte[]的风格存储在服务器的内存中。您应该使用FileOutputStream将其写入您自己文件。如果您将createTempFiles设置为true,那么您可以通过java.io.File获取一个值得信赖的org.richfaces.model.UploadItem#getFile()对象,然后提供显示实际路径的方法,例如{{3} }。

无论如何,我建议将其设置为true。多个用户的大量并发上传可能会导致OutOfMemoryException。你不想在生产中拥有它。

相关问题