Grails „Nicht-Null-Eigenschaft verweist auf eine Null- oder Transient-Wert“ -Ausnahme im Web Flow
-
20-09-2019 - |
Frage
Ich bekomme "org.springframework.dao.DatainEtgrityViolationException: Nicht-Null-Eigenschaft verweist auf einen Null- oder Transient-Wert: AB" Ausnahme in den Webfluss in den Gralen 1.1.2. Es gibt
class B {
...
static belongsTo = [a:A]
...
}
und
class A {
...
static hasMany = [b:B]
...
}
Weiß jemand, was los ist? Danke Tom
Lösung
Gelöst.
Es gab ein anderes Problem. Ich hielt nichts an. Es erschienen einige Inkonsisten zwischen serialisierten Daten im Fluss und persistierten Daten in der Datenbank. Eine ausgewählte Abfrage verursachte diese Ausnahme.
Andere Tipps
Dies hängt wirklich von den meisten ab, was Ihre Parameter sind und wie Sie die Erstellung oder Wartung der GORM -Objekte umgehen, nicht mit Ihrem tatsächlichen Objektdiagramm.
Stimme @john. Eine der gemeinsamen Lösungen ist, dass Sie das Objekt als Speichern speichern sollten
a.addToB(b)
a.save()
Ich hoffe es hilft.
Dieses Problem hängt mit dem ORM zusammen (ich denke, Sie verwenden den Winterhinne unten). Das Problem wird gelöst, wenn Sie die Kaskadeneigenschaft der zugeordneten Attribute konfigurieren.
Ich weiß nicht, wie man es in Grails konfigurieren, aber dieser Hibernate -Dokument sollte Ihnen helfen zu verstehen, wo das Problem ist: http://docs.jboss.org/hibernate/stable/entitymanager/reference/en/html/objectstate.html#objectstate-transitive