De uitzondering:
Vertelt ons dat de sessie-uitzondering voor . heeft plaatsgevonden het punt waar deze org.hibernate.AssertionFailure
wordt gegooid.
Om precies te zijn, de org.hibernate.AssertionFailure
wordt gegenereerd wanneer de session.flush()
gebeurt, niet het punt waar de fout optrad.
Het bovenstaande is een feit, dus een mogelijke conclusie daaruit is:iets kan onderdrukkend zijn de oorspronkelijke uitzondering.
Dus zoek naar andere mogelijke foutpunten:Een save()
of saveOrUpdate()
is mogelijk probeert een entiteit te behouden met een null
veld waarbij in de tabel de kolom NOT NULL
is ?
TIP: Probeer een session.flush()
. toe te voegen om te helpen bij het debuggen na elke interactie met de Session
object (bijv. session.save(obj)
, session.merge(obj)
, etc.), zal dit hopelijk de org.hibernate.AssertionFailure
veroorzaken eerder gebeuren, dichter bij waar het echte probleem zich voordoet. (Natuurlijk, na het debuggen, verwijder die session.flush()
.)
In mijn geval de echte uitzondering vond plaats in een try/catch {}
blok waar de catch
de uitzondering onderdrukt (heeft me er niet voor gewaarschuwd of me ervoor gewaarschuwd).