Tomcat excluindo arquivos quando a solicitação termina?
-
09-12-2019 - |
Pergunta
Estou me deparando com um problema extremamente estranho.estou a usar commons-fileupload
(1.2.1) para processar uploads de arquivos em meu webapp (hospedado no Tomcat 7.0.23 e no distributable
bandeira está definida).Assim que eu conseguir um DiskFileItem
exemplo do meu DiskFileItemFactory
(não FileCleaningTracker
), eu uso seu write
método para armazenar o arquivo (no mesmo diretório que o DiskFileItemFactory
foi configurado para uso caso fosse necessário gravar o arquivo no disco durante a transmissão).O problema é que esse novo arquivo (criado e nomeado explicitamente por mim) é excluído após a conclusão do processamento da solicitação.Como você pode imaginar, isso é problemático quando preciso acessar o arquivo novamente.
Informações que parecem relevantes:
- O diretório em questão não é o diretório temporário padrão do contexto do servlet, nem está abaixo do diretório Tomcat.
- Em um caminho de código alternativo, copio esse arquivo imediatamente (não em uma solicitação diferente) e QUE a cópia não é excluída.
- Mesmo se eu
chmod a-w
o arquivo antes da solicitação terminar, ele ainda será excluído quando a solicitação terminar.
Obrigado por qualquer ajuda.
Solução
E o culpado?Um perdido finalize
método de mais de 9 anos atrás fazendo "limpeza".