Problema com o caminho usando FileOutputStream

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

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

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

flws!

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

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

flws![/quote]

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

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

[quote=“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[/quote]

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!!

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

getServletContext().getRealPath("/")

que me retorna o caminho fisico da aplicacao.