Criando arquivo dentro do contexto da aplicação

8 respostas
R

Opa Galera

Seguinte…

no meu projeto eu possuo as seguintes pastas…

Projeto
…_css
…javaScript
…relatorios
…jasper
…pdf
…template

Eu gostaria de criar um arquivo dentro da pasta Projeto/relatorios/pdf/ como eu faço isto ?
No caso o arquivo que irá ser gerado é um PDF através do jasperReport…

Obrigado…

Rodrigo Kerkhoff

8 Respostas

G

No código não tem uma parte em que você informa o local onde será armazenado o PDF gerado ?

R

Sim sim…

Se eu colocar algo do genero C:\relatório\arquivo.pdf ele funciona…
Agora se eu coloca relatorios//pdf//arquivo.pdf ele da erro ( e a string resultante disto acaba sendo relatorios\pdf\arquivo.pdf ) …

Mais uma pergunta…

Minha app está dentro de um arquivo WAR, desta maneira é possível realizar isto que eu estou querendo ? Ou eu teria que tirar minha app do arquivo WAR e especificar o path real da pasta que eu quero ?

J

Não sei se é o caso, mas existe um metodo getRealPath() que te retorna o path absoluto de um path relativo...

ex.:

no servlet:

String path = getServletContext().getRealPath("/relatorios");

String arquivo = path+"/relatorio1.pdf";
R

Você sabe como eu tenho acesso ao ServletContext a partir de um bean JSF ?

J

Não trabalho com JSF, mas… encontrei isso, testa aí:

FacesContext facesContext = FacesContext.getCurrentInstance(); ServletContext servletContext = (ServletContext) facesContext.getExternalContext() .getContext();

R

hummm Vlw deu certo…

Tenho só mais uma pergunta…

Isto vai funcionar mesmo se a minha aplicação estiver dentro de um arquivo WAR ?

J

Sua aplicação não fica dentro de um arquivo WAR, esse arquivo é descompactado pelo servidor quando você faz deploy…

R

Hummm, viajei então hehe

Ta dando uns erros aqui ainda + não é mais o de antes… vo da uma pesquisada aqui, qualqueh coisa posto denovo=]

Vlw velho

Rodrigo Kerkhoff

Criado 18 de maio de 2006
Ultima resposta 19 de mai. de 2006
Respostas 8
Participantes 3