【问题标题】:Richfaces fileUpload: How to set path of temp files and how to clean itRichfaces fileUpload:如何设置临时文件的路径以及如何清理它
【发布时间】:2011-09-14 13:04:27
【问题描述】:

我在 Tomcat 服务器(在 linux 下)上使用 Richfaces。我将上传程序更改为 createTempFiles 以节省一些内存。默认情况下,它现在将文件加载到 ../tomcat/temp/ 文件中,例如“35f1968e-13267391427--71a74431089769578330705.upload”。不幸的是,Tomcat/Richfaces 不会删除这些文件。我该如何启用它?以及如何更改保存文件的文件夹的位置?我尝试了下面的配置,它没有改变任何东西(bug report - 如果我理解正确,它在 Richfaces 的 v3.3.3 中不可用)

    <init-param>
        <param-name>createTempFiles</param-name>
        <param-value>true</param-value>
    </init-param>
    <init-param>
        <description>
        Set the path where the intermediary files will be stored.
        </description>
        <param-name>uploadRepositoryPath</param-name>
        <param-value>uploadedfiles/</param-value>
    </init-param>

所以如果我不能更改目录(除非 sb 知道方法) - 如何在使用后摆脱临时文件?谢谢!

【问题讨论】:

    标签: java tomcat file-upload richfaces


    【解决方案1】:

    您要上传的文件有多大?无论如何,丰富的组件将上传的文件存储在临时文件夹中。您还可以检查是否 item.isTempFile() 并从文件操作中删除。而且你不需要初始化到 DD 中。

    public synchronized void fileUploadListener(UploadEvent event) {
            UploadItem item = event.getUploadItem();
    
            uploadedFile = item.getFile();
            isFileUploaded = true;
        }
    

    onClear 你可以添加这个事件。

        public void resetFileUpload(UploadEvent event) {
    
            LOGGER.info("Resetting the file uploaded");
            uploadedFile = null;
            isFileUploaded = false;
        }
    

    【讨论】:

      猜你喜欢
      • 2019-11-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-23
      • 2012-08-19
      相关资源
      最近更新 更多