Skip to content

Instantly share code, notes, and snippets.

@maikelsperandio
Created February 7, 2017 12:52
Show Gist options
  • Save maikelsperandio/8fc635c22f60f0c4510305b5e29a0a63 to your computer and use it in GitHub Desktop.
Save maikelsperandio/8fc635c22f60f0c4510305b5e29a0a63 to your computer and use it in GitHub Desktop.
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.util.Map;
import javax.faces.context.FacesContext;
import javax.servlet.ServletContext;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import org.springframework.stereotype.Component;
@Component
public class RelatorioBase {
public InputStream geraRelatorioPDF(Map<String, Object> mapaParametros, String nomeJasper, JRDataSource dataSource) throws Exception{
FacesContext context = FacesContext.getCurrentInstance();
ServletContext servletContext = (ServletContext) context.getExternalContext().getContext();
String pathRel = servletContext.getRealPath("/reports/"+nomeJasper+".jasper");
// JasperCompileManager.compileReport(pathRel);
JasperPrint print = JasperFillManager.fillReport(pathRel,mapaParametros,dataSource);
byte[] bytes = JasperExportManager.exportReportToPdf(print);
return new ByteArrayInputStream(bytes);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment