Taller 5- Verificar si existe al guardar

Usaremos una búsqueda para determinar si existe o no ese documento en la colección

 Optional<Persona> optional = personaRepository.findById(persona);
            if (optional.isPresent()) {
                JsfUtil.warningMessage("Existe una persona con esa cedula");
                return null;
            }

Desabilitar la busqueda por @Id automáticamente, usamos repository.save(entity,false)

  if (personaRepository.save(persona,false)) {
                JsfUtil.successMessage("Guardado");
            } else {
                JsfUtil.errorDialog("no se guardo()", personaRepository.getException().toString());
            }

Segmento de código

public String save() {
        try {
            Optional<Persona> optional = personaRepository.findById(persona);
            if (optional.isPresent()) {
                JsfUtil.warningMessage("Existe una persona con esa cedula");
                return null;
            }
            if (personaRepository.save(persona, false)) {
                JsfUtil.successMessage("Guardado");
            } else {
                JsfUtil.errorDialog("no se guardo()", personaRepository.getException().toString());
            }
        } catch (Exception e) {
            JsfUtil.errorDialog("save()", e.getLocalizedMessage());
        }

        return "";
    }

}

PersonaController

Last updated

Was this helpful?