По умолчанию исключение не выдается.
Метод save()
, внедренный в классы домена, возвращает false
, если на этапе проверки произошла ошибка.Классический пример кода для проверки сохранения / обновления класса домена:
if (!myDomainObj.save()) {
log.warn myDomainObj.errors.allErrors.join(' \n') //each error is an instance of org.springframework.validation.FieldError
}
Если вам нужно исключение для определенного класса домена, используйте:
myDomainObj.save(failOnError: true)
и исключениядля проверки будут сбои.
Если вы хотите создать исключение для КАЖДОГО класса домена, просто установите grails.gorm.failOnError
на true
в grails-app / conf / Config.groovy
Будьте осторожны: все свойства домена имеют неявное ограничение nullable: false
.
Я рекомендую вам прочитать эту статью .