| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/10/2011 07:59:58
|
Romulinho
Debugger
Membro desde: 21/03/2005 19:13:04
Mensagens: 67
Offline
|
Olá Pessoal!
To fazendo um exemplo de download com VRaptor usando o FileDownload, já que meu arquivo se encontra no disco. Após o download notei que não consigo apagá-lo do disco, é como se estivesse em uso.
Olhando os fontes, percebi que o stream do download não é fechado.
Deve funcionar dessa forma mesmo? Se sim, então se eu quiser apagar o arquivo via sistema, eu devo implementar o download usando diretamente o response?
Valeu galera!
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/10/2011 10:48:00
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
|
Bom, o FileDownload delega pro InputStreamDownload que usa o ByteStreams.copy, que teoricamente fecha o stream... não deveria dar problema com isso...
será que não tem outro lugar travando o arquivo?
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/10/2011 11:36:45
|
Romulinho
Debugger
Membro desde: 21/03/2005 19:13:04
Mensagens: 67
Offline
|
Cara, olhando o fonte do ByteStreams.copy não vi o stream sendo fechado. A versão do Guava que tenho é r07, que já vem como dependência do VRaptor.
Apenas pra conhecimento, o código que vejo é:
Nem o "from" nem o "to" são fechados.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/10/2011 14:45:06
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
|
=(
por favor abra uma issue no VRaptor pra isso:
http://github.com/caelum/vraptor/issues
se quiser corrigir e mandar um pull request tb =)
por enquanto na sua aplicação vc pode copiar essa classe:
https://github.com/caelum/vraptor/blob/master/vraptor-core/src/main/java/br/com/caelum/vraptor/interceptor/download/FileDownload.java
e fechar o stream no final.
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/10/2011 14:59:04
|
Romulinho
Debugger
Membro desde: 21/03/2005 19:13:04
Mensagens: 67
Offline
|
Blz Lucas! Valeu pela atenção! Vou abrir a issue sim, só não vou garantir o pull request, mas vou fazer o possível!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/10/2011 15:34:29
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
|
=)
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/10/2011 07:42:56
|
Romulinho
Debugger
Membro desde: 21/03/2005 19:13:04
Mensagens: 67
Offline
|
E aí Lucas, Issue cadastrada e Pull Request enviado.
Valeu!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/10/2011 09:04:45
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
|
obrigado!
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/11/2011 01:00:38
|
garcia-jj
JWizard
Membro desde: 13/04/2009 22:11:50
Mensagens: 2715
Localização: Porto Alegre
Offline
|
Ví que o pull-request ainda está aberto, e fiz uns testes com esse teu pull request e funcionou tudo bem.
Não consegui testar esse lance de lock de arquivo porque o Linux não faz esse lock que nem no Windows.
Abraços
|
http://github.com/garcia-jj
Não respondo dúvidas via MP. Use o fórum. |
|
|
 |
|
|