public void searchCidade() {
      facesContext = FacesContext.getCurrentInstance();
      requestContext = RequestContext.getCurrentInstance();

      List<Cidade> listCidade;
      try {
         listCidade = genericDAO.searchObject(Cidade.class,"cidade",
                 null, null,
                 new String[]{"cidadeDescricao", "estado"},
                 new Object[]{cidade.getCidadeDescricao(), cidade.getEstado()});
         if (listCidade.isEmpty()) {
            opcaoHeader = "cadastrar cidade";

            facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Cidade não encontrada", "Cadastre-a para prosseguir!"));
            requestContext.getCurrentInstance().execute("PF('cadastrarDialog').show();");
         } else if (listCidade.size() == 1) {
            facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Cidade encontrada", "Prossiga o cadastro!"));
            cidade = listCidade.get(0);
         } else {
            facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "Informe mais detalhes", "Sua busca retornou muitos registros"));
         }
      } catch (Exception ex) {
         Logger.getLogger(NovoPacienteMB.class.getName()).log(Level.SEVERE, null, ex);
      }

   }