J'ai mis à jour tous mes services pour qu'ils soient transactionnels en utilisant la capacité de récupération de Grail lorsqu'une exception RuntimeException est lancée dans le service. Je, dans la plupart des cas, ce faisant:Annulation d'une transaction dans un service Grails
def domain = new Domain(field: field)
if (!domain.save()) {
throw new RuntimeException()
}
Quoi qu'il en soit, je voulais vérifier que ce fait va annuler la transaction ... il m'a fait penser à si, à ce stade, il a déjà été commis .. De plus Si ce n'est pas le cas, cela mettrait de la couleur: vrai changement ça? Je ne suis pas très familier avec la façon dont Spring/Hibernate fait tout cela :)
Génial, merci! – RyanLynch
content d'être de service –
Les exceptions personnalisées qui étendent RuntimeException devraient être OK, n'est-ce pas? En outre, vous pouvez activer les transactions dans MySQL en réglant: dialect = org.hibernate.dialect.MySQLInnoDBDialect dans dataSource :) – RyanLynch