robinsonbsilva
Tenta ai:
public void create(List dados, HashMap parameters, String reportName, boolean thereAreSubReports) throws ReportException {
FacesContext facesContext = FacesContext.getCurrentInstance();
HttpServletResponse response = (HttpServletResponse) facesContext.getExternalContext().getResponse();
InputStream reportStream = facesContext.getExternalContext().getResourceAsStream("/WEB-INF/classes/br/com/renaissance/reports/" + reportName + ".jasper");
if(thereAreSubReports){
parameters.put("SUBREPORT_DIR", facesContext.getExternalContext().getRealPath("/WEB-INF/classes/br/com/renaissance/reports/").concat("\\"));
}
JRDataSource jrds = new JRBeanCollectionDataSource(dados);
try {
ServletOutputStream servletOutputStream = response.getOutputStream();
response.setContentType("application/pdf");
facesContext.responseComplete();
try {
JasperRunManager.runReportToPdfStream(reportStream, servletOutputStream, parameters, jrds);
} catch (JRException e) {
throw new ReportException(e.getMessage());
}
servletOutputStream.flush();
servletOutputStream.close();
} catch (IOException e) {
throw new ReportException(e.getMessage());
} catch (Exception e) {
throw new ReportException(e.getMessage());
}
}
darksteel3000
Funcionou perfeitamente, me passou despercebido o fato dentro do WEB-INF tinha como chegar no classes.
Muito obrigado !!!