Problema com o caminho usando FileOutputStream

5 respostas
T

Bom dia,

gostaria de saber se eu consigo criar um arquivo em uma pasta no contexto da minha aplicação…

ex.

new FileOutputStream("/root/temp/nomedoarquivo.*")

ele esta falando que nao consegue encontrar o caminho

5 Respostas

D

tem sim… suponha q seu contexto chama App… entaum faz o seguinte:

new FileOutputStream("/App/caminho/nomedoarquivo.ext")

flws!

T

“diegodrumond”:
tem sim… suponha q seu contexto chama App… entaum faz o seguinte:

new FileOutputStream("/App/caminho/nomedoarquivo.ext")

flws!

Já tentei e não funcionou, e ocorre o erro : “java.io.FileNotFoundException:”, pois ele não encontra o caminho

J

o caminho do arquivo tem que ser relativo ao diretorio da classe principal.
a partir da pasta onde esta o .class que esta rodando que voce faz isso.
se voce fizer so “new FileOutputStream(“arquivo.ext”)” ele vai colocar o arquivo.ext no mesmo diretorio do .class…

espero ter sido claro

T

“javaAdicted”:
o caminho do arquivo tem que ser relativo ao diretorio da classe principal.
a partir da pasta onde esta o .class que esta rodando que voce faz isso.
se voce fizer so “new FileOutputStream(“arquivo.ext”)” ele vai colocar o arquivo.ext no mesmo diretorio do .class…

espero ter sido claro

Ok, entendi e funcionou.
Mas o problema é que o arquivo foi gravado no “bin” do JBoss. O que estou tentando realizar agora, é permitir com que qualquer usuário da minha aplicação efetue o download do arquivo gerado (por exemplo: através de javascript vou chamar o arquivo “window.location.href=htttp://localhost:8080/myAppCtx/dat/arquivo.ext” com isto o browser efetua o download automaticamente) .
Portanto, entendo que uma forma seria a de efetuar o mapeamento de um diretório virtual da minha aplicação para um diretório físico.
Portanto como realizo esta configuração no Jboss ?

Por exemplo:
Virtual: http://localhost:8080/myAppCtx/dat/
Físico: c:\myDirTrabalho\meusDats

Obrigado!!

T

pessoal, consegui gravar no contexto da minha aplicacao. Para isso usei o metodo

getServletContext().getRealPath("/")

que me retorna o caminho fisico da aplicacao.

Criado 30 de junho de 2005
Ultima resposta 30 de jun. de 2005
Respostas 5
Participantes 3