Вопрос

Я столкнулся с чрезвычайно странной проблемой.я использую commons-fileupload (1.2.1) для обработки загрузки файлов в мое веб-приложение (размещенное в tomcat 7.0.23, а distributable флаг установлен).Как только я получу DiskFileItem экземпляр из моего DiskFileItemFactory (нет FileCleaningTracker), я использую его write метод для хранения файла (в том же каталоге, в котором находится DiskFileItemFactory был настроен на использование в случае необходимости записи файла на диск во время его потоковой передачи).Проблема в том, что этот новый файл (явно созданный и названный мной) затем удаляется после завершения обработки запроса.Как вы понимаете, это проблематично, когда мне нужно снова получить доступ к файлу.

Интересные факты, которые могут оказаться актуальными:

  • Рассматриваемый каталог не является временным каталогом по умолчанию в контексте сервлета и не находится под каталогом Tomcat.
  • В альтернативном пути кода я копирую этот файл немедленно (а не в другом запросе) и ЧТО копия не удаляется.
  • Даже если я chmod a-w файл до завершения запроса, он все равно удаляется после завершения запроса.

Спасибо за любую помощь.

Это было полезно?

Решение

И виновник?Бродячий finalize метод, разработанный более 9 лет назад, для «очистки».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top