Grails - Hibernate / Проверка списка объектов домена - PullRequest
0 голосов
/ 08 марта 2012

С Grails у вас есть мета-метод сохранения, прикрепленный к объекту Domain. У меня есть список объектов, которые я хочу сохранить все вместе. Но если произойдет сбой одного из них, я хочу, чтобы вся «транзакция» провалилась:

while(allDomainObjects) {
   try { 
      thisObject.save()
   }
   catch(...) {
     // end transaction
     // kill all pending that weren't flushed yet?
   }
}

flushAll()?

Если это не дает сбоя, я хочу в основном сохранить все объекты, которые были сохранены в методе «сбросить все». На том же уровне я хочу убить все эти ожидающие сохранения, если у меня будет половина пути итерации allDomainObjects, чтобы ни один из вызовов не был постоянным.

Я использую слои Hibernate / SiteMesh по умолчанию для своего проекта. Как мне обработать несколько транзакций сохранения домена ??

Спасибо!

1 Ответ

0 голосов
/ 08 марта 2012

Это должно вам помочь: Grails: как структурировать транзакции, когда я хочу продолжить проверку даже после того, как транзакция уже провалилась

В вашем случае, если вы не хотите продолжать обработку, чтобы найти все свои ошибки, вы проверяете каждый объект по мере прохождения и возвращаетесь, как только обнаружите ошибку.

Насколько я знаю, flushAll() метод не существует.

...