5 Stimmen

HibernateOptimisticLockingFailureException beim Aktualisieren eines Objekts

Beim Aktualisieren eines Objekts erhalte ich folgende Ausnahme.

HibernateOptimisticLockingFailureException: Objekt der Klasse [User] mit Bezeichner [25614]: optimistisches Sperren fehlgeschlagen; verschachtelte Ausnahme ist org.hibernate.StaleObjectStateException: Zeile wurde aktualisiert oder gelöscht durch eine andere Transaktion aktualisiert oder gelöscht (oder die Zuordnung von ungesicherten Werten war falsch): [User#25614]

Situation: - Grund, warum ich mit diesem Fehler konfrontiert bin, ist, dass ich ein Formular habe, wo Benutzer angezeigt werden, und ich habe zwei Schaltflächen dort eine für die Aktualisierung des Kennworts und eine für die Bearbeitung der Details der Benutzer. wenn ich auf die Aktualisierung des Kennworts klicken, dann es nur das Objekt abfragen und aktualisiert sein Kennwort und halten das Objekt in Hibernate-Sitzung. Wenn ich dann auf die Schaltfläche "Bearbeiten" klicke und die Informationen ändere und sie dann speichere, gibt es die oben erwähnte Ausnahme, weil das Objekt, das ich zu speichern versuche, kein Hibernate-Sitzungsobjekt ist, sondern ein Objekt mit demselben Bezeichner von Hibernate abgefragt wurde, während das Passwort aktualisiert wurde. Jetzt habe ich zwei Objekte mit demselben Bezeichner, von denen sich eines in der Hibernate-Sitzung befindet und das andere noch nicht persistiert ist (kein losgelöstes Objekt). Ich möchte die Änderungen aus dem nicht persistierten Objekt in der Datenbank aktualisieren, aber da sich ein Objekt mit demselben Bezeichner in der Hibernate-Sitzung befindet, gibt Hibernate eine Ausnahme.

Wie kann ich Änderungen von nicht persistierten Objekten in persistierte Objekte zusammenführen?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X