Boa noite pessoal!
Alguém sabe como posso chamar um relatório feito em Ireport em uma aplicação construida com JSF + RichFaces? Pois da maneira que estou fazendo só funciona se não estiver utilizando o RichFaces. Segue a maneira como fiz, se alguém souber como modificar para funcionar com o RichFaces…
Qualquer idéia é bem vinda! Obrigado!
public void imprimir(String relatorio, HashMap<String, Object> parametros, HttpServletResponse response, Connection conexao) {
try {
byte[] arquivo = new byte[0];
String caminho = getDiretorioReal("Relatorios/"+ relatorio + ".jasper");
JasperReport jasper = (JasperReport) JRLoader.loadObject(caminho);
JasperPrint print = JasperFillManager.fillReport(jasper, parametros, conexao);
arquivo = JasperExportManager.exportReportToPdf(print);
response.setContentType("application/pdf");
response.setContentLength(arquivo.length);
OutputStream saida = response.getOutputStream();
saida.write(arquivo, 0, arquivo.length);
saida.flush();
saida.close();
} catch (Exception ex) {
System.err.println("O arquivo não foi gerado corretamente!");
ex.printStackTrace();
}
}