Alterar o método para saída de um arquivo zip download no Browser

2 respostas
douglasmanteiga

Tenho esse método que gerar um arquivo zip mas tenho que passar um caminho na máquina local...
Alguem poderia me ajudar alterar o método para fazer download pelo Browser?
Segue abaixo o código:

public void zip(File outputFile, ProtocoloBean protocoloBean,
            UsuarioBean usuarioBean, DocumentoBean documentoBean) throws 
            FileNotFoundException, IOException, SQLException {

        ZipOutputStream out = new ZipOutputStream(new FileOutputStream(
                outputFile));
        
        zipFiles(out, protocoloBean, usuarioBean, documentoBean);
        out.close();
        
    }
Agora meu outro método que eh chamado pelo de cima... esse método faz separação de arquivos e pastas para o ZIP Estou postando só o começo e o final...
private void zipFiles(ZipOutputStream out, ProtocoloBean protocoloBean,
            UsuarioBean usuarioBean, DocumentoBean documentoBean) throws
            IOException, SQLException {


        ZipEntry pastaUsuario = null;
        ZipEntry pastaDocumento = null;

        String dataUsuario = usuarioBean.getDataCadastro().toString().
                replaceAll("-", "_");

        pastaUsuario = new ZipEntry("Usuario/"
                + usuarioBean.getCpf().toString()
                + "_"
                + usuarioBean.getCodigo().toString()
                + "/"
                + usuarioBean.getCpf().toString()
                + "_"
                + dataUsuario
                + "_"
                + usuarioBean.getCodigo().toString()
                + ".jpg");

        out.putNextEntry(pastaUsuario);
        out.write(usuarioBean.getFoto());
        out.flush();
        out.closeEntry();
}

2 Respostas

Gustavo_Marques

Só escrever no httpservletresponse.

Tem um exemplo aqui: http://programadorprofissional.blogspot.com.br/2012/11/fazendo-download-de-arquivos-pelo.html

att

douglasmanteiga

Gustavo Marques:
Só escrever no httpservletresponse.

Tem um exemplo aqui: http://programadorprofissional.blogspot.com.br/2012/11/fazendo-download-de-arquivos-pelo.html

att

Boa tarde Gustavo valeu pela resposta… mas é o seguinte eu não quero pega o arquivo gravado no HD e despachar para download… Gostaria de alterar o método para que quando o usuário clica já é gerado um arquivo ZIP e despachado para download…
Pois o arquivo que gero .zip é dados que vem tudo do Banco…

Valeu pelo exemplo…

Criado 5 de novembro de 2012
Ultima resposta 5 de nov. de 2012
Respostas 2
Participantes 2