Como utilizar arquivos Java de forma correta em uma aplicação Web?
8 respostas
rafadelnero
Boa noite!
Estou com uma dúvida referente a utilização de arquivos com aplicações Web, quero utilizar arquivos de dentro do meu projeto, só que para recuperá-los, o caminho vai mudar de computador pra computador.
E gostaria de saber como que eu faço isso em um projeto Web, já vi alguns métodos como getCanonicalPath, entre outros, e também percebi que esses caminhos referenciam direto o arquivo temporário no Tomcat, porém preciso que tenha algum método que pegue o caminho de dentro de meu projeto, é possível fazer isso?
Esse caminho funciona em qualquer sistema operacional? Ele pega direto de dentro do meu projeto?
Roselito_Favero_da_S
Eu uso sempre assim, com Linux, com Rwindows, em todos os projetos que necessitam disso.
P
Pacato
olá amigo estou com o mesmo problema… acho que é…
quero deixar um arquivo dentro da minha aplicação e colocar um botão de download do mesmo para o usuário baixar como modelo de arquivo… mas não sei como
Roselito_Favero_da_S
Se você puser, por exemplo, um arquivo teste.pdf dentro da pasta resources, use um botão, ou um menu que aponte para
Você pode também criar um atributo String chamado arquivo, por exemplo, no controlador e referenciar no botão do xhtml como “#{controlador.arquivo}”. Aí é so retornar o caminho acima no getArquivo().
P
Pacato
Entendi…
Obrigado Roselito…
Mas isso funcionaria colocando em um jsp? sem passar por um servlet??
Por exemplo:
Pq não estou conseguindo… queria uma forma mais prática do que usar o FacesContext (Precisa de jar?)
Roselito_Favero_da_S
Dê uma pesquisada em JSF para ver como usar o FacesContext.
Use um controlador (Managed bean). Você cria um método com o que eu passei e chama o método no action do seu botão.
Veja um exemplo de como acessar métodos de um managed bean aqui: http://rfavero.blogspot.com.br/2013/10/atualizando-datatables-de-diferentes_3.html
P
Pacato
Olá Roselito…
Coloquei o arquivo no webcontent e chamei o mesmo no jsp direto… ficou mais simples… para o que eu preciso…Obrigado mesmo assim.