Pessoal, recentemente os relatórios gerados pelo Chrome começaram a apresentar problemas nos aparelhos Android. Funciona normalmente IOS… Alguém enfrentou esse problema gerando PDF com JasperSoft
? Vi que o android agora tem a opção de abrir PDF diretamente pelo browser e creio que isso tenha afetado em algo!
ExceptionConverter: org.apache.catalina.connector.ClientAbortException: java.io.IOException: Uma conexão estabelecida foi anulada pelo software no computador host
public void imprimirPDF() throws JRException, IOException{
FacesContext context = FacesContext.getCurrentInstance();
ServletContext servletContext = (ServletContext) context.getExternalContext().getContext();
String caminhoRelatorio = servletContext.getRealPath("/relatorios/ganhadores.jasper");
HttpServletResponse response = (HttpServletResponse) context.getExternalContext().getResponse();
response.reset();
response.setContentType("application/pdf");
response.setHeader("Content-disposition", "inline; filename="+nomepdf);
ServletOutputStream servletOutputStream = response.getOutputStream();
JasperPrint impressao = JasperFillManager.fillReport(caminhoRelatorio, params, new JREmptyDataSource());
JRPdfExporter exporter = new JRPdfExporter();
exporter.setExporterInput(new SimpleExporterInput(impressao));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(servletOutputStream));
exporter.exportReport();
FacesContext.getCurrentInstance().responseComplete();
FacesContext.getCurrentInstance().renderResponse();
}
omiti os parametros, mas como disse: no IOS e no computador funciona perfeitamente