8
respostas

Acesso negado FileDownload PRIMEFACES

Pessoal como faço para corrigir este acesso negado do windows, consigo gravar o arquivo com o upload mas quando vou fazer o download ele me retorna o seguinte erro:

set 28, 2017 5:37:30 PM com.sun.faces.lifecycle.InvokeApplicationPhase execute
ADVERTÊNCIA: java.io.FileNotFoundException: C:\Temp\Ha (Acesso negado)
javax.el.ELException: java.io.FileNotFoundException: C:\Temp\Ha (Acesso negado)
    at org.apache.el.parser.AstValue.invoke(AstValue.java:260)
    at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)
    at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:149)
    at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
    at
public void descarregar() throws IOException {
        arquivo.setId(1);
        Arquivo arquivo2 = new DAO<Arquivo>(Arquivo.class).buscaPorId(arquivo.getId());

        System.out.println(arquivo2.getNomeArquivo());
        System.out.println(arquivo2.getCaminhoArquivo());

        // Abaixo temos um código estático, mas
        // obviamente você pode buscar o arquivo de onde quiser :)
        InputStream in = new FileInputStream(new File("C:\\Temp\\Ha"));
        streamedContent = new DefaultStreamedContent(in, "image/PNG" , "Encerramento de lojas.PNG");
    }
8 respostas

Fala Clinton, blz?

o problema está no acesso à pasta, tenta colocar em outro diretório ou permitir acesso nessa mesma pasta.

Olá Samir,

Já consedi permissão total de todos na pasta, já mudei o diretório e mesmo assim continua o acesso negado, estranho pois ele consegue gravar arquivos com upload e não consegue baixar do mesmo diretório.

Clinton, vc ja tentou colocar de um caminho do servidor ou precisa ser na máquina local msm?

Ainda não, primeiro quero validar tudo local até porque é um tcc

Sim, mas vc deve estar usando um servidor que aponta para um localhost, não?

Correto, via localhost.

Fala Clinton, tenta passar o nome do Arquivo na hora que vc está dando um new em File dentro do FileInputStream.

Acredito que possa ser esse o problema

Samir muito obrigado, está foi a solução.