private void buscarPaisesComunLogic(
      ActionMapping mappings,
      ActionForm form,
      HttpServletRequest request,
      HttpServletResponse response) {
    try {
      // EmplazamientoForm direccionForm = (EmplazamientoForm) form;

      // Obtener información del usuario conectado
      AppUser appUser = getAppUser(request);

      // Obtener la entidad para el usuario conectado
      Properties params = null;

      if ((appUser != null) && (StringUtils.isNotEmpty(appUser.getEntity()))) {
        params = new Properties();
        params.put(MultiEntityConstants.ENTITY_PARAM, appUser.getEntity());
      }

      GestorGeograficos gestorGeograficos = GestorGeograficosFactory.getConnector(params);
      List paises = null;
      if (gestorGeograficos.soportaBusquedaExtendida()) {
        paises =
            gestorGeograficos.busquedaElementos(
                GestorGeograficos.PAIS, new HashMap(), request.getParameter("patternNombrePais"));
        Collections.sort(paises, ElementoGeograficoComparator.getInstance(GestorGeograficos.PAIS));
      } else {
        paises = gestorGeograficos.recuperarPaises(request.getParameter("patternNombrePais"));
      }
      request.setAttribute(TransferenciasConstants.PAISES, paises);
    } catch (GestorGeograficosException gge) {
      obtenerErrores(request, true)
          .add(ActionErrors.GLOBAL_ERROR, new ActionError(Constants.ERROR_GESTOR_GEOGRAFICOS));
    }
  }
  private void buscarPoblacionComunLogic(
      ActionMapping mappings,
      ActionForm form,
      HttpServletRequest request,
      HttpServletResponse response) {
    try {
      EmplazamientoForm direccionForm = (EmplazamientoForm) form;

      // Obtener información del usuario conectado
      AppUser appUser = getAppUser(request);

      // Obtener la entidad para el usuario conectado
      Properties params = null;

      if ((appUser != null) && (StringUtils.isNotEmpty(appUser.getEntity()))) {
        params = new Properties();
        params.put(MultiEntityConstants.ENTITY_PARAM, appUser.getEntity());
      }

      GestorGeograficos gestorGeograficos = GestorGeograficosFactory.getConnector(params);
      List poblaciones = null;
      if (gestorGeograficos.soportaBusquedaExtendida()) {
        Map ids = new HashMap();
        ids.put(new Integer(GestorGeograficos.PAIS), direccionForm.getCodigoPais());
        ids.put(new Integer(GestorGeograficos.PROVINCIA), direccionForm.getCodigoProvincia());
        ids.put(new Integer(GestorGeograficos.MUNICIPIO), direccionForm.getCodigoMunicipio());
        poblaciones =
            gestorGeograficos.busquedaElementos(
                GestorGeograficos.POBLACION, ids, request.getParameter("patternNombrePoblacion"));
        Collections.sort(
            poblaciones, ElementoGeograficoComparator.getInstance(GestorGeograficos.POBLACION));
      } else {
        Municipio municipio = null;
        if (direccionForm.getCodigoMunicipio() != null
            && !StringUtils.isEmpty(direccionForm.getMunicipio())) {
          Provincia provincia =
              new Provincia(
                  direccionForm.getCodigoPais(),
                  direccionForm.getCodigoProvincia(),
                  direccionForm.getProvincia());
          municipio =
              new Municipio(
                  provincia.getCodigoPais(),
                  provincia.getCodigo(),
                  direccionForm.getCodigoMunicipio(),
                  direccionForm.getMunicipio());
        }
        poblaciones =
            gestorGeograficos.recuperarPoblaciones(
                municipio, request.getParameter("patternNombrePoblacion"));
        request.setAttribute(TransferenciasConstants.MUNICIPIO, municipio);
      }
      request.setAttribute(TransferenciasConstants.POBLACIONES, poblaciones);
    } catch (GestorGeograficosException gge) {
      obtenerErrores(request, true)
          .add(ActionErrors.GLOBAL_ERROR, new ActionError(Constants.ERROR_GESTOR_GEOGRAFICOS));
    }
  }
  public void nuevoEmplazamientoDescripcionExecuteLogic(
      ActionMapping mappings,
      ActionForm form,
      HttpServletRequest request,
      HttpServletResponse response) {

    EmplazamientoForm frm = (EmplazamientoForm) form;
    removeInTemporalSession(request, TransferenciasConstants.SOPORTA_BUSQUEDA_EXTENDIDA);
    try {
      // Obtener información del usuario conectado
      AppUser appUser = getAppUser(request);

      // Obtener la entidad para el usuario conectado
      Properties params = null;

      if ((appUser != null) && (StringUtils.isNotEmpty(appUser.getEntity()))) {
        params = new Properties();
        params.put(MultiEntityConstants.ENTITY_PARAM, appUser.getEntity());
      }

      GestorGeograficos gestorGeograficos = GestorGeograficosFactory.getConnector(params);
      setInTemporalSession(
          request,
          TransferenciasConstants.SOPORTA_BUSQUEDA_EXTENDIDA,
          new Boolean(gestorGeograficos.soportaBusquedaExtendida()));
    } catch (GestorGeograficosException gge) {
      obtenerErrores(request, true)
          .add(ActionErrors.GLOBAL_ERROR, new ActionError(Constants.ERROR_GESTOR_GEOGRAFICOS));
    }

    ServiceRepository services =
        ServiceRepository.getInstance(ServiceClient.create(getAppUser(request)));

    GestionInfoSistemaBI infoSistemaBI = services.lookupInfoSistemaBI();
    DatosGeograficosVO datosGeograficos = infoSistemaBI.getDatosGeograficosDefecto();

    frm.setPais(datosGeograficos.getNombrePais());
    frm.setCodigoPais(datosGeograficos.getCodigoPais());
    frm.setProvincia(datosGeograficos.getNombreProvincia());
    frm.setCodigoProvincia(datosGeograficos.getCodigoProvincia());

    // Establecer los Valores por Defecto
    frm.setPaisDefecto(datosGeograficos.getNombrePais());
    frm.setCodigoPaisDefecto(datosGeograficos.getCodigoPais());
    frm.setProvinciaDefecto(datosGeograficos.getNombreProvincia());
    frm.setCodigoProvinciaDefecto(datosGeograficos.getCodigoProvincia());

    frm.setContextPath(request.getContextPath());

    // Obtener las referencias
    leerReferenciasDescripcion(request, frm);

    setReturnActionFordward(request, mappings.findForward("edicion_emplazamiento_descripcion"));
  }