Tenho um servlet que gera relatório em pdf. Peguei o código p/ dar manutenção, quando compilo o relatório novamente no IReport(mesmo sem alteração), na funciona, funciona apenas com o relatório antigo.
Tem alguma coisa que devo fazer p/ compilar o relatório para Web.
Obs.: Estão atualizados o .jar do JasperReport.
Veja o código do método:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
{//throws ServletException, IOException {
try
{
Map param = new HashMap();
String formato = request.getParameter(“formato”);
String nomeRelatorio = “/relatorio/” + request.getParameter(“relatorio”);
Enumeration e = request.getParameterNames();
while (e.hasMoreElements())
{
String p = (String)e.nextElement();
param.put(p,request.getParameter§);
}
InputStream logo = getServletContext().getResourceAsStream("/relatorio/unifor.jpg");
param.put(“logo”, logo);
//System.out.println( ClassLoader.getSystemResource(nomeRelatorio).getPath().toString() );
InputStream tmpEntra = getServletContext().getResourceAsStream(nomeRelatorio);
JasperReport rel = JasperManager.loadReport(tmpEntra); //erro ocorre aqui
JasperPrint prin = JasperFillManager.fillReport(rel, param, ConexaoBD.conexao);
if (formato.equals(“pdf”))
{
response.setContentType(“application/pdf”);
OutputStream saida = response.getOutputStream();
JasperManager.printReportToPdfStream(prin, saida);
saida.close();
}
else
{
if (formato.equals(“xls”))
{
response.setContentType(“application/msexcel”);
OutputStream saida = response.getOutputStream();
JasperExportManager.exportReportToXmlStream(prin, saida);
<a href="//JasperManager.printReportToPdfStream">//JasperManager.printReportToPdfStream</a>(prin, saida);
saida.close();
}
else
{
if (formato.equals(“html”))
{
response.setContentType(“text/html”);
//OutputStream saidaTmp = new OutputStream();
PrintWriter saida = response.getWriter();
<a href="//JasperExportManager.exportReportToXmlStream">//JasperExportManager.exportReportToXmlStream</a>(prin, saidaTmp);
<a href="//JasperManager.printReportToPdfStream">//JasperManager.printReportToPdfStream</a>(prin, saida);
saida.close();
}
}
}
}
catch (Exception e)
{
System.out.println(e.getMessage() );
}
}