@SuppressWarnings("unchecked") public void gerarRelatorio() { FacesContext context = FacesContext.getCurrentInstance(); HttpServletResponse response = (HttpServletResponse) context.getExternalContext().getResponse(); try { String caminho = context.getExternalContext().getRealPath("/WEB-INF/relatorio/form_respondido.jasper"); @SuppressWarnings("rawtypes") HashMap parametro = new HashMap(); parametro.put("avaliado_id", this.idAvaliado); parametro.put("processo_id", this.idProcesso); parametro.put("media_final", this.media); parametro.put("conceito", this.descricaoConceito); byte[] bytes = JasperRunManager.runReportToPdf(caminho, parametro, ControlaConexao.getConexao()); if (bytes.length != 0 && bytes != null) { ServletOutputStream saida = response.getOutputStream(); response.setContentType("application/pdf"); response.setContentLength(bytes.length); saida.write(bytes, 0, bytes.length); saida.flush(); saida.close(); context.responseComplete(); } else { FacesContext.getCurrentInstance() .addMessage( null, new FacesMessage( FacesMessage.SEVERITY_WARN, "Não foi possível gerar relatório. ", "Tente novamente mais tarde.")); } } catch (IOException e) { System.out.println("IOException " + e.getMessage()); FacesContext.getCurrentInstance() .addMessage( null, new FacesMessage( FacesMessage.SEVERITY_WARN, "Não foi possível gerar relatório. ", "Tente novamente mais tarde.")); } catch (JRException e) { System.out.println("JRE: " + e.getMessage()); FacesContext.getCurrentInstance() .addMessage( null, new FacesMessage( FacesMessage.SEVERITY_WARN, "Não foi possível gerar relatório. ", "Tente novamente mais tarde.")); } catch (SQLException e) { System.out.println("JRE: " + e.getMessage()); FacesContext.getCurrentInstance() .addMessage( null, new FacesMessage( FacesMessage.SEVERITY_WARN, "Não foi possível gerar relatório. ", "Tente novamente mais tarde.")); } media = 0; nota = 0; descricaoConceito = ""; }
public void conectarSgdb(String caminho, String login, String senha) throws SQLException { conexao = ControlaConexao.getConexao(caminho, login, senha); }