private byte[] generaPdf(List lista) throws JRException {
    Map<String, Object> params = new HashMap<>();
    JasperDesign jd =
        JRXmlLoader.load(
            this.getClass()
                .getResourceAsStream("/mx/edu/um/mateo/inventario/reportes/almacenes.jrxml"));
    JasperReport jasperReport = JasperCompileManager.compileReport(jd);
    JasperPrint jasperPrint =
        JasperFillManager.fillReport(jasperReport, params, new JRBeanCollectionDataSource(lista));
    byte[] archivo = JasperExportManager.exportReportToPdf(jasperPrint);

    return archivo;
  }
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    try {
      Locales.setCurrent(request);
      if (Users.getCurrent() == null) { // for a bug in websphere portal 5.1 with Domino LDAP
        Users.setCurrent((String) request.getSession().getAttribute("xava.user"));
      }
      request.getParameter("application"); // for a bug in websphere 5.1
      request.getParameter("module"); // for a bug in websphere 5.1
      Tab tab = (Tab) request.getSession().getAttribute("xava_reportTab");
      int[] selectedRowsNumber =
          (int[]) request.getSession().getAttribute("xava_selectedRowsReportTab");
      Map[] selectedKeys = (Map[]) request.getSession().getAttribute("xava_selectedKeysReportTab");
      int[] selectedRows = getSelectedRows(selectedRowsNumber, selectedKeys, tab);
      request.getSession().removeAttribute("xava_selectedRowsReportTab");
      Integer columnCountLimit =
          (Integer) request.getSession().getAttribute("xava_columnCountLimitReportTab");
      request.getSession().removeAttribute("xava_columnCountLimitReportTab");

      setDefaultSchema(request);
      String user = (String) request.getSession().getAttribute("xava_user");
      request.getSession().removeAttribute("xava_user");
      Users.setCurrent(user);
      String uri = request.getRequestURI();
      if (uri.endsWith(".pdf")) {
        InputStream is;
        JRDataSource ds;
        Map parameters = new HashMap();
        synchronized (tab) {
          tab.setRequest(request);
          parameters.put("Title", tab.getTitle());
          parameters.put("Organization", getOrganization());
          parameters.put("Date", getCurrentDate());
          for (String totalProperty : tab.getTotalPropertiesNames()) {
            parameters.put(totalProperty + "__TOTAL__", getTotal(request, tab, totalProperty));
          }
          TableModel tableModel = getTableModel(request, tab, selectedRows, false, true, null);
          tableModel.getValueAt(0, 0);
          if (tableModel.getRowCount() == 0) {
            generateNoRowsPage(response);
            return;
          }
          is = getReport(request, response, tab, tableModel, columnCountLimit);
          ds = new JRTableModelDataSource(tableModel);
        }
        JasperPrint jprint = JasperFillManager.fillReport(is, parameters, ds);
        response.setContentType("application/pdf");
        response.setHeader(
            "Content-Disposition", "inline; filename=\"" + getFileName(tab) + ".pdf\"");
        JasperExportManager.exportReportToPdfStream(jprint, response.getOutputStream());
      } else if (uri.endsWith(".csv")) {
        String csvEncoding = XavaPreferences.getInstance().getCSVEncoding();
        if (!Is.emptyString(csvEncoding)) {
          response.setCharacterEncoding(csvEncoding);
        }
        response.setContentType("text/x-csv");
        response.setHeader(
            "Content-Disposition", "inline; filename=\"" + getFileName(tab) + ".csv\"");
        synchronized (tab) {
          tab.setRequest(request);
          response
              .getWriter()
              .print(
                  TableModels.toCSV(
                      getTableModel(request, tab, selectedRows, true, false, columnCountLimit)));
        }
      } else {
        throw new ServletException(
            XavaResources.getString("report_type_not_supported", "", ".pdf .csv"));
      }
    } catch (Exception ex) {
      log.error(ex.getMessage(), ex);
      throw new ServletException(XavaResources.getString("report_error"));
    } finally {
      request.getSession().removeAttribute("xava_reportTab");
    }
  }
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    ServletOutputStream servletOutputStream = response.getOutputStream();
    JasperReport jasperReport;
    JasperPrint jasperPrint;

    Connection conn = null;

    try {

      Context ctx = new InitialContext();
      DataSource ds = (DataSource) ctx.lookup("java:jboss/datasources/BuffaloDS");
      conn = ds.getConnection();

      if (conn != null) {
        System.out.println("Conexion Exitosa JDBC com.edb.Driver...");
      } else {
        System.out.println("Error Conexion JDBC com.edb.Driver...");
      }

    } catch (Exception e) {
      // TODO: handle exception
      System.out.println("Error al conectar JDBC: " + e.getMessage());
    }

    try {
      String pUsuario = request.getParameter("pUsuario");
      String pSucursal = request.getParameter("pSucursal");
      String pId = request.getParameter("pId");

      System.out.println("Parametros Reporte: ......");
      System.out.println("pUsuario: " + pUsuario);
      System.out.println("pSucursal: " + pSucursal);
      System.out.println("pId : " + pId);

      System.out.println("Conexion em: " + em.isOpen());

      @SuppressWarnings("deprecation")
      String realPath = request.getRealPath("/");
      System.out.println("Real Path: " + realPath);

      // load JasperDesign from XML and compile it into JasperReport
      System.out.println(
          "Context getServletContext: " + request.getServletContext().getContextPath());
      System.out.println("Context getServletPath: " + request.getServletPath());
      System.out.println(
          "Context getSession().getServletContext(): "
              + request.getSession().getServletContext().getRealPath("/"));

      String urlPath = request.getRequestURL().toString();
      urlPath =
          urlPath.substring(0, urlPath.length() - request.getRequestURI().length())
              + request.getContextPath()
              + "/";
      System.out.println("URL ::::: " + urlPath);

      String rutaReporte =
          urlPath + "resources/report/OrdenesIngreso/reporteTraspasoMateriaPrima.jasper";
      System.out.println("rutaReporte: " + rutaReporte);

      String rutaImagen = urlPath + "resources/gfx/Medipiel-Logo.jpg";
      System.out.println("RutaImagen: " + rutaImagen);
      String SUBREPORT_DIR = urlPath + "resources/report/OrdenesIngreso/";
      System.out.println("SUBREPORT_DIR: " + SUBREPORT_DIR);

      // create a map of parameters to pass to the report.
      Map parameters = new HashMap();
      parameters.put("SUBREPORT_DIR", SUBREPORT_DIR);
      parameters.put("usuario", pUsuario);
      /*parameters.put("pSucursal", new Integer(pSucursal));*/
      parameters.put("ID", new Integer(pId));
      // parameters.put("pRutaImagen", rutaImagen);

      // find file .jasper
      jasperReport = (JasperReport) JRLoader.loadObject(new URL(rutaReporte));

      // fill JasperPrint using fillReport() method
      jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, conn);

      // save report to path
      // JasperExportManager.exportReportToPdfFile(jasperPrint,"C:/etiquetas/Etiqueta+"+pCodigoPre+"-"+pNombreElaborado+".pdf");
      response.setContentType("application/pdf");
      JasperExportManager.exportReportToPdfStream(jasperPrint, servletOutputStream);

      servletOutputStream.flush();
      servletOutputStream.close();

    } catch (Exception e) {
      // display stack trace in the browser
      e.printStackTrace();
      System.out.println("Error al ingresar RerpoteVentas: " + e.getMessage());
      StringWriter stringWriter = new StringWriter();
      PrintWriter printWriter = new PrintWriter(stringWriter);
      e.printStackTrace(printWriter);
      response.setContentType("text/plain");
      response.getOutputStream().print(stringWriter.toString());
    }
  }
  protected void createReport2(HttpServletRequest req, HttpServletResponse resp, String strNoSTS)
      throws ServletException, IOException {
    try {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      String strDSN = jvCommonClass.fnGetProperty("DSN");
      java.sql.Connection con = DriverManager.getConnection("jdbc:odbc:" + strDSN);
      String strFileJRXML = "report5.jrxml";
      String strFileJasper =
          (new StringBuilder(String.valueOf(JRXML_LOCAL_PATH))).append(strFileJRXML).toString();
      String strTglAnggaran = req.getSession().getAttribute("strTglAnggaran").toString();
      Date dtTglAnggaran = null;
      try {
        dtTglAnggaran = (new SimpleDateFormat("dd/MM/yyyy")).parse(strTglAnggaran);
      } catch (ParseException e) {
        e.printStackTrace();
      }
      String strNamaPemda = req.getParameter("hidNamaPemda").toString();
      String strNamaBidang = req.getParameter("hidNamaBidang").toString();
      String strAlamatPemda = req.getParameter("hidAlamatPemda").toString();
      String strKotamadyaPemda = req.getParameter("hidKotamadyaPemda").toString();
      String strKodePos = req.getParameter("hidKodePos").toString();
      String strTelepon = req.getParameter("hidTelepon").toString();
      String strFacsimile = req.getParameter("hidFacsimile").toString();
      String strNamaUser = req.getParameter("hidNamaUser").toString();
      String strKdJabatanUser = req.getParameter("hidKdJabatanUser").toString();
      String strNIPUser = req.getParameter("hidNIPUser").toString();
      String strJabatanUser = req.getParameter("hidJabatanUser").toString();
      String strAngka = req.getParameter("hidTotal").toString();
      String strTerbilang = req.getParameter("hidTerbilang").toString();
      String strNamaPejabat = req.getParameter("hidNamaPejabat").toString();
      String strJabatanPejabat = req.getParameter("hidJabatanPejabat").toString();
      String strNIPPejabat = req.getParameter("hidNIPPejabat").toString();
      Map parameters = new HashMap();
      parameters.put("pNamaPemda", strNamaPemda);
      parameters.put("pNamaDinas", strNamaBidang);
      parameters.put("pNoSTS", strNoSTS);
      parameters.put("pAngka", strAngka);
      parameters.put("pTerbilang", strTerbilang);
      parameters.put("pNamaAtasan", strNamaPejabat);
      parameters.put("pJabatanAtasan", strJabatanPejabat);
      parameters.put("pNIP", strNIPPejabat);
      String strNamaBendahara = "";
      String strNIPBendahara = "";
      Hashtable htInfoPejabat1 = jvg.fnGetInfoPejabat();
      int intHtInfoPejabat = htInfoPejabat1.size();
      for (int a = 1; a <= intHtInfoPejabat; a++) {
        String strArray[] = (String[]) htInfoPejabat1.get(String.valueOf(a));
        if (strArray[0].equals("31100")) {
          strNamaBendahara = strArray[1];
          strNIPBendahara = strArray[2];
        }
      }

      parameters.put("pNamaBendahara", strNamaBendahara);
      parameters.put("pNIPBendahara", strNIPBendahara);
      SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyy");
      Date todayDate = new Date();
      String strToday = sdf.format(todayDate);
      net.sf.jasperreports.engine.JasperReport jasperReport =
          JasperCompileManager.compileReport(strFileJasper);
      net.sf.jasperreports.engine.JasperPrint print =
          JasperFillManager.fillReport(jasperReport, parameters, con);
      String strFilePDF = (new StringBuilder("STS_")).append(strToday).append(".pdf").toString();
      String strOutput =
          (new StringBuilder(String.valueOf(REPORT_LOCAL_PATH))).append(strFilePDF).toString();
      JasperExportManager.exportReportToPdfFile(print, strOutput);
      String strPDFOutput =
          (new StringBuilder(String.valueOf(OUTPUT_LOCAL_PATH))).append(strFilePDF).toString();
      resp.sendRedirect(strPDFOutput);
    } catch (ClassNotFoundException cnfe) {
      cnfe.printStackTrace();
    } catch (SQLException sqle) {
      sqle.printStackTrace();
    } catch (JRException jre) {
      jre.printStackTrace();
    }
  }
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    ServletOutputStream servletOutputStream = response.getOutputStream();
    JasperReport jasperReport;
    JasperPrint jasperPrint;

    Connection conn = null;

    Properties props = new Properties();

    //        FacesContext.getCurrentInstance().responseComplete();
    try {
      Context ctx = new InitialContext();
      DataSource ds = (DataSource) ctx.lookup("java:jboss/datasources/BuffaloDS");
      conn = ds.getConnection();

      if (conn != null) {
        System.out.println("Conexion Exitosa JDBC com.edb.Driver...");
      } else {
        System.out.println("Error Conexion JDBC com.edb.Driver...");
      }

    } catch (Exception e) {
      // TODO: handle exception
      System.out.println("Error al conectar JDBC: " + e.getMessage());
    }

    try {
      String pPaciente = request.getParameter("pPaciente");
      String pCodigoPre = request.getParameter("pCodigoPre");
      String pNombreElaborado = request.getParameter("pNombreElaborado");
      String pPresentacion = request.getParameter("pPresentacion");
      String pMedico = request.getParameter("pMedico");
      String pUso = request.getParameter("pUso");
      String pConservacion = request.getParameter("pConservacion");
      String pFechaElaboracion = request.getParameter("pFechaElaboracion");
      String pFechaVencimiento = request.getParameter("pFechaVencimiento");

      System.out.println("Parametros Reporte: ......");
      System.out.println("pPaciente: " + pPaciente);
      System.out.println("pCodigoPre: " + pCodigoPre);
      System.out.println("pNombreElaborado: " + pNombreElaborado);
      System.out.println("pPresentacion: " + pPresentacion);
      System.out.println("pMedico: " + pMedico);
      System.out.println("pUso: " + pUso);
      System.out.println("pConservacion: " + pConservacion);
      System.out.println("pFechaElaboracion: " + pFechaElaboracion);
      System.out.println("pFechaVencimiento: " + pFechaVencimiento);

      System.out.println("Conexion em: " + em.isOpen());

      @SuppressWarnings("deprecation")
      String realPath = request.getRealPath("/");
      System.out.println("Real Path: " + realPath);

      // load JasperDesign from XML and compile it into JasperReport
      System.out.println(
          "Context getServletContext: " + request.getServletContext().getContextPath());
      System.out.println("Context getServletPath: " + request.getServletPath());
      System.out.println(
          "Context getSession().getServletContext(): "
              + request.getSession().getServletContext().getRealPath("/"));

      String urlPath = request.getRequestURL().toString();
      urlPath =
          urlPath.substring(0, urlPath.length() - request.getRequestURI().length())
              + request.getContextPath()
              + "/";
      System.out.println("URL ::::: " + urlPath);

      // create a map of parameters to pass to the report.
      Map parameters = new HashMap();
      parameters.put("pPaciente", pPaciente);
      parameters.put("pCodigoPre", pCodigoPre);
      parameters.put("pNombreElaborado", pNombreElaborado);
      parameters.put("pPresentacion", pPresentacion);
      parameters.put("pMedico", pMedico);
      parameters.put("pUso", pUso);
      parameters.put("pConservacion", pConservacion);
      parameters.put("pFechaElaboracion", pFechaElaboracion);
      parameters.put("pFechaVencimiento", pFechaVencimiento);

      String rutaReporte = urlPath + "resources/report/EtiquetaGrande.jasper";
      System.out.println("rutaReporte: " + rutaReporte);

      // find file .jasper
      jasperReport = (JasperReport) JRLoader.loadObject(new URL(rutaReporte));

      // fill JasperPrint using fillReport() method
      jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, conn);

      //        		//save report to path
      //
      //	JasperExportManager.exportReportToPdfFile(jasperPrint,"C:/etiquetas/Etiqueta+"+pCodigoPre+"-"+pNombreElaborado+".pdf");
      response.setContentType("application/pdf");
      JasperExportManager.exportReportToPdfStream(jasperPrint, servletOutputStream);

      servletOutputStream.flush();
      servletOutputStream.close();

    } catch (Exception e) {
      // display stack trace in the browser
      e.printStackTrace();
      System.out.println("Error al ingresar ReporteEtiquetaGrande: " + e.getMessage());
      StringWriter stringWriter = new StringWriter();
      PrintWriter printWriter = new PrintWriter(stringWriter);
      e.printStackTrace(printWriter);
      response.setContentType("text/plain");
      response.getOutputStream().print(stringWriter.toString());
    }
  }
  /**
   * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
   *
   * @param request servlet request
   * @param response servlet response
   * @throws ServletException if a servlet-specific error occurs
   * @throws IOException if an I/O error occurs
   */
  protected void processRequest(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    HttpSession sessao = request.getSession();
    String expira = (String) sessao.getAttribute("empresa");
    if (expira == null) {
      response.sendRedirect("index.jsp?msgLog=3");
    } else {

      String nomeBD = (String) sessao.getAttribute("empresa");
      int idCliente = (Integer) sessao.getAttribute("idCliente");
      int idUser = (Integer) sessao.getAttribute("idUsuarioEmp");
      String nomeUser = (String) sessao.getAttribute("nomeUser");
      String param = request.getParameter("ids");

      String formato = request.getParameter("formato");
      String ordem = request.getParameter("ordem");
      String url_jrxml = "etiqueta_A4_4_por_folha.jasper";
      if (formato.equals("A4")) {
        url_jrxml = "etiqueta_A4_4_por_folha.jasper";
      } else if (formato.equals("A4_6")) {
        url_jrxml = "etiqueta_A4_6_por_folha.jasper";
      } else if (formato.equals("ENV_DL")) {
        url_jrxml = "etiqueta_envelope_DL.jasper";
      } else if (formato.equals("ENV_DL_ESQ")) {
        url_jrxml = "etiqueta_envelope_DL_ESQ.jasper";
      } else if (formato.equals("ENV_C5_ESQ")) {
        url_jrxml = "etiqueta_envelope_C5_ESQ.jasper";
      } else if (formato.equals("ENV_C5")) {
        url_jrxml = "etiqueta_envelope_C5.jasper";
      } else if (formato.equals("ENV_B4")) {
        url_jrxml = "etiqueta_envelope_B4.jasper";
      } else if (formato.equals("ETQ_10x10")) {
        url_jrxml = "etiqueta_10x10.jasper";
      } else if (formato.equals("ETQ_16x10")) {
        url_jrxml = "etiqueta_16x10.jasper";
      } else if (formato.equals("ETQ_12x9e5")) {
        url_jrxml = "etiqueta_12x9e5.jasper";
      }

      int posicaoInicial = 1;
      if (formato.startsWith("A4") && request.getParameter("posicaoInicial") != null) {
        posicaoInicial = Integer.parseInt(request.getParameter("posicaoInicial"));
      }

      Image IMG_LOGO = null;
      Image IMG_ECONOMICO = null;
      Image IMG_STANDARD = null;
      Image IMG_EXPRESSA = null;
      Image IMG_PREMIUM = null;
      try {
        IMG_LOGO = new ImageIcon(getClass().getResource("Images/logo_ect.jpg")).getImage();
        IMG_ECONOMICO = new ImageIcon(getClass().getResource("Images/ECONOMICO.jpg")).getImage();
        IMG_STANDARD = new ImageIcon(getClass().getResource("Images/STANDARD.jpg")).getImage();
        IMG_EXPRESSA = new ImageIcon(getClass().getResource("Images/EXPRESSA.jpg")).getImage();
        IMG_PREMIUM = new ImageIcon(getClass().getResource("Images/PREMIUM.jpg")).getImage();
      } catch (Exception e) {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
          /* TODO output your page here. You may use following sample code. */
          out.println("<!DOCTYPE html>");
          out.println("<html>");
          out.println("<head>");
          out.println("<title>Exception</title>");
          out.println("</head>");
          out.println("<body>");
          out.println(e + "");
          out.println("</body>");
          out.println("</html>");
        }
      }
      try {
        Clientes cli = contrCliente.consultaClienteById(idCliente, nomeBD);
        String nome = cli.getNome();
        if (cli.getNome_etq() == 1) {
          nome = cli.getNomeFantasia();
        }
        String num = "";
        String comp = "";
        String bairro = cli.getBairro();
        String cidade = cli.getCidade();
        String uf = cli.getUf();
        if (cli.getNumero() != null
            && !cli.getNumero().trim().equals("")
            && !cli.getNumero().trim().equals("null")) {
          num = ", n " + cli.getNumero();
        }
        if (cli.getComplemento() != null
            && !cli.getComplemento().trim().equals("")
            && !cli.getComplemento().trim().equals("null")) {
          comp = ", " + cli.getComplemento();
        }
        String logradouro = cli.getEndereco() + num + comp;
        String contrato = "";
        if (cli.getTemContrato() == 1) {
          contrato = cli.getNumContrato();
        }

        String url_base = "http://www.portalpostal.com.br";
        String url = cli.getUrl_logo();
        if (cli.getUrl_logo() == null
            || cli.getUrl_logo().trim().equals("")
            || cli.getUrl_logo().equals("null")) {
          url = "";
        } else {
          if (!url.startsWith("http")) {
            url = url_base + cli.getUrl_logo();
          }
          if (!urlExist(url)) {
            url = "";
          }
        }

        String sql_query =
            "SELECT"
                + " IF(numObjeto = 'avista', id, numObjeto) AS nObj, "
                + " IF(contrato = '', '0', '1') AS temContrato,"
                + " IF(contrato = '' || nomeServico = 'PPI' || nomeServico = 'CARTA' || nomeServico = 'SIMPLES', "
                + "CONCAT('"
                + url_base
                + "/imagensNew/chancelas/', nomeServico, '.png'), "
                + "CONCAT('"
                + url_base
                + "/imagensNew/chancelas/CHANCELA_', nomeServico, '.png')"
                + ") AS imgChancela,"
                + " nomeServico, "
                + " siglaAmarracao, "
                + " p.cartaoPostagem, "
                + " codECT, "
                + " observacoes, "
                + " id, "
                + " p.idDepartamento, "
                + " peso, "
                + " destino_postagem, "
                + " d.nome AS nomeDes, "
                + " IF(aos_cuidados IS NULL OR aos_cuidados = '', '', CONCAT('A/C ', aos_cuidados)) AS nomeAc, "
                + " IF(valor_declarado = 0, '', 'VD') AS vd,"
                + " IF(aviso_recebimento = 0, '', 'AR') AS ar,"
                + " IF(mao_propria = 0, '', 'MP') AS mp,"
                + " valor_declarado,"
                + " aviso_recebimento,"
                + " mao_propria,"
                + " registro,"
                + " registro_modico,"
                + " posta_restante,"
                + " notaFiscal, "
                + " departamento, "
                + " valor_cobrar, "
                + " conteudo, "
                + " setor, "
                + " SUBSTRING(d.nome_sa, 1, 30) AS nomeDesCompacto, "
                + " d.*, "
                + " dep.* "
                + " FROM"
                + " pre_venda AS p"
                + " LEFT JOIN"
                + " pre_venda_destinatario AS d "
                + " ON"
                + " p.idDestinatario = d.idDestinatario"
                + " LEFT JOIN"
                + " cliente_departamentos AS dep "
                + " ON"
                + " p.idDepartamento = dep.idDepartamento AND p.idCliente = dep.idCliente"
                + " WHERE"
                + " p.idCliente = "
                + idCliente
                + " AND impresso = 0 AND id IN ("
                + param
                + ")"
                + " ORDER BY "
                + ordem
                + ";";

        // System.out.println(sql_query);
        Connection conn = Conexao.conectar(nomeBD);
        List dados = new ArrayList();
        byte[] bytes = null;

        for (int i = 1; i < posicaoInicial; i++) {
          dados.add(null);
        }
        try {
          PreparedStatement valores = conn.prepareStatement(sql_query);
          ResultSet r = (ResultSet) valores.executeQuery();
          while (r.next()) {
            DadosEtiqueta d = new DadosEtiqueta();
            d.setLogo_ect_img(IMG_LOGO);
            d.setId_pp(r.getInt("id"));
            d.setId_cliente(r.getInt("idCliente"));
            d.setId_depto(r.getInt("idDepartamento"));

            d.setCodido_ect(r.getInt("codECT"));
            d.setGrupo_servico(r.getString("nomeServico"));
            d.setSro(r.getString("nObj"));
            d.setCartao_postagem(r.getString("p.cartaoPostagem"));
            if (r.getString("temContrato").equals("1")) {
              d.setContrato_ect(contrato);
            } else {
              d.setContrato_ect("");
            }

            try {
              if (r.getString("imgChancela").contains("CHANCELA_")) {
                Image IMG_CHANCELA =
                    new ImageIcon(
                            getClass()
                                .getResource(
                                    "Images/CHANCELA_" + r.getString("nomeServico") + ".png"))
                        .getImage();
                d.setChancela_img(IMG_CHANCELA);
              } else {
                Image IMG_CHANCELA =
                    new ImageIcon(
                            getClass().getResource("Images/" + r.getString("nomeServico") + ".png"))
                        .getImage();
                d.setChancela_img(IMG_CHANCELA);
              }

              if (d.getGrupo_servico().contains("PAC") || d.getGrupo_servico().equals("PAX")) {
                d.setSimbolo_img(IMG_STANDARD);
              } else if (d.getGrupo_servico().equals("SEDEX10")
                  || d.getGrupo_servico().equals("SEDEX12")
                  || d.getGrupo_servico().equals("SEDEXHJ")) {
                d.setSimbolo_img(IMG_PREMIUM);
              } else if (d.getGrupo_servico().contains("SEDEX")) {
                d.setSimbolo_img(IMG_EXPRESSA);
              } else if (d.getGrupo_servico().contains("SEDEX")
                  || d.getGrupo_servico().contains("PPI")) {
                d.setSimbolo_img(IMG_EXPRESSA);
              } /* else {
                    d.setSimbolo_img(IMG_ECONOMICO);
                }*/
            } catch (Exception e) {
              d.setChancela_img(null);
              d.setSimbolo_img(null);
            }

            d.setUrl_chancela(r.getString("imgChancela"));
            d.setUrl_logo(url);
            d.setSigla_triagem(r.getString("siglaAmarracao"));
            d.setNota_fiscal(r.getString("notaFiscal"));
            d.setConteudo(r.getString("conteudo"));
            d.setObservacao(r.getString("observacoes"));
            d.setAos_cuidados(r.getString("nomeAc"));

            d.setPeso(r.getFloat("peso"));
            d.setAltura(0);
            d.setLargura(0);
            d.setComprimento(0);

            d.setAr(r.getInt("aviso_recebimento"));
            d.setMp(r.getInt("mao_propria"));
            d.setRg(r.getInt("registro"));
            d.setRm(r.getInt("registro_modico"));
            d.setPr(r.getInt("posta_restante"));
            d.setVd(r.getFloat("valor_declarado"));
            d.setValor_cobrar(r.getFloat("valor_cobrar"));

            d.setDestinatario_nome(r.getString("d.nome"));
            d.setDestinatario_documento(r.getString("d.cpf_cnpj"));
            d.setDestinatario_logradouro(r.getString("d.endereco"));
            d.setDestinatario_numero(r.getString("d.numero"));
            d.setDestinatario_complemento(r.getString("d.complemento"));
            d.setDestinatario_bairro(r.getString("d.bairro"));
            d.setDestinatario_cidade(r.getString("d.cidade"));
            d.setDestinatario_uf(r.getString("d.uf"));
            d.setDestinatario_pais(r.getString("d.pais"));
            d.setDestinatario_cep(
                Util.FormataString.formatarCep("#####-###", r.getString("d.cep")));
            d.setDestinatario_cep_dig(
                Util.FormataString.formatarCep("########", r.getString("d.cep")));
            d.setDestinatario_celular(r.getString("d.celular"));
            d.setDestinatario_email(r.getString("d.email"));

            if (r.getInt("dep.temEndereco") == 1) {
              d.setRemetente_nome(r.getString("dep.nomeEndereco"));
              d.setRemetente_documento("");
              d.setRemetente_departamento(r.getString("departamento"));
              d.setRemetente_logradouro(
                  r.getString("dep.logradouro")
                      + ", "
                      + r.getString("dep.numero")
                      + ", "
                      + r.getString("dep.complemento"));
              d.setRemetente_numero(r.getString("dep.numero"));
              d.setRemetente_complemento(r.getString("dep.complemento"));
              d.setRemetente_bairro(r.getString("dep.bairro"));
              d.setRemetente_cidade(r.getString("dep.cidade"));
              d.setRemetente_uf(r.getString("dep.uf"));
              d.setRemetente_pais("BR");
              d.setRemetente_cep(
                  Util.FormataString.formatarCep("#####-###", r.getString("dep.cep")));
            } else {
              d.setRemetente_nome(nome);
              d.setRemetente_documento("");
              d.setRemetente_departamento(r.getString("departamento"));
              d.setRemetente_logradouro(logradouro);
              d.setRemetente_numero("");
              d.setRemetente_complemento(r.getString("setor"));
              d.setRemetente_bairro(bairro);
              d.setRemetente_cidade(cidade);
              d.setRemetente_uf(uf);
              d.setRemetente_pais("BR");
              d.setRemetente_cep(Util.FormataString.formatarCep("#####-###", cli.getCep() + ""));
            }
            dados.add(d);
          }
          valores.close();

          try {
            Map parametros = new HashMap();
            InputStream in = getClass().getResourceAsStream(url_jrxml);
            JRDataSource jrds = new JRBeanCollectionDataSource(dados);
            JasperPrint impressao = JasperFillManager.fillReport(in, parametros, jrds);
            bytes = JasperExportManager.exportReportToPdf(impressao);
          } catch (JRException e) {
            response.setContentType("text/html;charset=UTF-8");
            try (PrintWriter out = response.getWriter()) {
              /* TODO output your page here. You may use following sample code. */
              out.println("<!DOCTYPE html>");
              out.println("<html>");
              out.println("<head>");
              out.println("<title>Exception</title>");
              out.println("</head>");
              out.println("<body>");
              out.println(e + "");
              out.println("</body>");
              out.println("</html>");
            }
          }

        } catch (SQLException e) {
          response.setContentType("text/html;charset=UTF-8");
          try (PrintWriter out = response.getWriter()) {
            /* TODO output your page here. You may use following sample code. */
            out.println("<!DOCTYPE html>");
            out.println("<html>");
            out.println("<head>");
            out.println("<title>Exception</title>");
            out.println("</head>");
            out.println("<body>");
            out.println(e + "");
            out.println("</body>");
            out.println("</html>");
          }
        } finally {
          Conexao.desconectar(conn);
        }

        if (bytes != null && bytes.length > 0) {
          ContrPreVenda.setarImpresso(nomeBD, param, idUser, nomeUser);
          response.setContentType("application/pdf");
          response.setContentLength(bytes.length);
          ServletOutputStream ouputStream = response.getOutputStream();
          ouputStream.write(bytes, 0, bytes.length);
          ouputStream.flush();
          ouputStream.close();
        }
      } catch (Exception e) {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
          /* TODO output your page here. You may use following sample code. */
          out.println("<!DOCTYPE html>");
          out.println("<html>");
          out.println("<head>");
          out.println("<title>Exception</title>");
          out.println("</head>");
          out.println("<body>");
          out.println(e + "");
          out.println("</body>");
          out.println("</html>");
        }
      }
    }
  }