Wenn persistente Domänenobjekte mit Grails/GORM verwendet werden, frage ich mich häufig, warum ein save() - Aufruf fehlschlägt. o.errors.allErrors.each {println it}, wenn ein Domänenobjekt nicht gespeichert werden kann
Dies kann leicht durch Hinzufügen der Logik gelöst werden:
if (!o.save()) {
o.errors.allErrors.each { println it }
}
jedoch das Hinzufügen dieser überall mache ich eine .save() fügt eine Menge von doppeltem Code. Im Geiste von DRY möchte ich Grails/GORM konfigurieren, um automatisch irgendwelche Speicherfehler auf die Konsole (stderr) zu drucken. Ist das möglich? Wenn nicht, wie erweitere ich GORM, um es zu ermöglichen?
Das ist eine schöne Erweiterung der Antwort, die ich zur Verfügung gestellt habe. Freut mich, dass du es gelöst hast. – codeLes
Dadurch wird s() allen Objekten hinzugefügt, nicht nur Domänenobjekten. Um es nur zu Domänenobjekten hinzuzufügen, müssen Sie die Metaprogrammierung in doWithDynamicMethods schließen –