Boa tarde,
Estou com problemas em gerar um relatório usando JasperReport, apartir de uma classe é gerado um relatório em pdf em branco. A aplicação não acusa nenhum tipo de erro…mas o relatório aparece em branco.
Minha Classe
.
.
.
HttpSession sessao = request.getSession();
Conexao(sessao);
// Na variavel pathJasper ficara o caminho do diretório para os relatórios compilados (.jasper)
String pathJasper = sessao.getServletContext().getRealPath(
"WEB-INF/classes")
+ "/";
// A variavel path armazena o caminho real para o contexto
// isso é util pois o seu web container pode estar instalado em lugares diferentes
String path = sessao.getServletContext().getRealPath("/");
// Parametros do relatorio
Map parametros = new HashMap();
// O único parametro que devemos passar é o PathRelQuestoes
// é o caminho pro RelaQuestionarios.jasper (que foi subtituido pelo
// valor fixo “D:/iReport-1.1.0/RelaQuestionarios.jasper”)
parametros.put("PathRelQuestoes", pathJasper + "RelaQuestionarios.jasper");
try {
// Aqui ele cria o relatório
JasperPrint impressao = JasperFillManager.fillReport(pathJasper
+ "RelaQuestionarios.jasper", parametros, con);
// Grava o relatório em disco em pdf
JasperManager.printReportToPdfFile(impressao, path
+ "/RelaQuestionarios.pdf");
// Redireciona para o pdf gerado
response.sendRedirect("RelaQuestionarios.pdf");
} catch (Exception e) {
//response.getWriter().println("Erro ao gerar o relatório: " + e);
}
}
private void Conexao(HttpSession sessao)
{
try
{
ProxyBanco ins = ProxyBanco.getBanco();
ins.ConectaRel();
}
catch(ClassNotFoundException cnfe){
sessao.setAttribute("conteudo",AppConfig.getConfig().getPaginaDeErro());
sessao.setAttribute("msg", AppConfig.getConfig().getMsgErroBd());
}
catch(SQLException sqlex){
logger.debug("não adicionou, problemas no sql!"+ sqlex);
sessao.setAttribute("conteudo",AppConfig.getConfig().getPaginaDeErro());
sessao.setAttribute("msg", AppConfig.getConfig().getMsgErroBd());
}
}
}
O arquivo RelaQuestionarios.jasper está na pasta WEB-INF/classes