iReport
Bom galera to uma dúvida, estou desenvolvendo um projeto web utilizando servlets, juntamente com iReport para fazer os meus relatórios. A dúvida é essa minha classe compila o arquivo e gera um pdf, porém eu não estou conseguindo fazer com que esse arquivo pdf gerado apareça para o usuário fazer o download do mesmo, na minha servlet estou apenas imprimindo com a classe PrintWriter. O retorno dessa minha classe é realmente JasperPrint?
public class FuncionarioRelatorio {
public JasperPrint relatorio(String mapa, String filtro){
try {
// Conexao
Connection conn = ConnectionManager.startConnection();
// compilacao do JRXML
JasperReport report = JasperCompileManager.compileReport("/relatorios/funcionarios.jrxml");
HashMap<String, Object> hashMap = new HashMap<String, Object>();
hashMap.put(mapa, filtro);
JasperPrint print = JasperFillManager.fillReport(report, hashMap, conn);
JasperExportManager.exportReportToPdf(print);
return print;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println(e);
}
return null;
}
}
Jean Lenon
Curtidas 0
Respostas
Robson Teixeira
01/11/2012
Olá Jean,
tente obter o seu relatorio em byte e no seu servlet pegue o objeto responde e obtenha a stream atravez do response e passe os bytes do relatorio para o método write conforme o exemplo abaixo
resp.setContentType(PASSE O TYPE PARA O TIPO PDF);
resp.setHeader("Content-disposition", "attachment;filename=NOME DO ARQUIVO.pdf\"");
resp.getOutputStream().write(relatorio);
e o seu relatorio vai ser exibido pelo navagador para download
att
robson
tente obter o seu relatorio em byte e no seu servlet pegue o objeto responde e obtenha a stream atravez do response e passe os bytes do relatorio para o método write conforme o exemplo abaixo
resp.setContentType(PASSE O TYPE PARA O TIPO PDF);
resp.setHeader("Content-disposition", "attachment;filename=NOME DO ARQUIVO.pdf\"");
resp.getOutputStream().write(relatorio);
e o seu relatorio vai ser exibido pelo navagador para download
att
robson
GOSTEI 0
Jean Lenon
01/11/2012
Valeu Robson, consegui resolver desse jeito.
Obrigado
Obrigado
GOSTEI 0
Alisson Santos
01/11/2012
Estou concluindo o tópico qualquer problema só informar
GOSTEI 0