ich die folgende Fehlermeldung erhalten, wenn man versucht, ein Objekt zu bestehen:JPA Eclipselink: Wie welche Beziehung finden verursachen Fehler
java.lang.IllegalStateException: During synchronization a new object was found through a relationship that was not marked cascade PERSIST
Gibt es eine einfache Möglichkeit, die Beziehung zu sagen, das Problem Objekt hat?
Es ist möglich, dass das persistente Objekt viele Beziehungen hat und ein Versuch und ein Fehler oder eine Suche durch Eliminierung funktioniert, aber ich würde gerne wissen, ob es einen einfacheren schnelleren Weg gibt, das Problembeziehungsobjekt zu identifizieren.
Update: Ich stoße dieses Problem in regelmäßigen Abständen, und ich war immer in der Lage, die Ursache des Problems zu finden, oder in der Lage, die Operationen neu zu ordnen, um das Problem zu lösen, aber mein Problem ist die Zeit Es dauert, um das beleidigende Objekt zu finden.
Meine Lösungen wurden immer durch Versuch und Irrtum gefunden. Manchmal finde ich die Lösung in Minuten, manchmal dauert es Stunden. Meine Frage ist: Gibt es einen leichteren Weg zu finden, welche von möglicherweise vielen Beziehungen das Problem verursacht. Die Ausnahme behauptet nur, dass ein "neues Objekt" durch eine "Beziehung" gefunden wurde, das hilft mir nicht, welches Objekt oder welche Beziehung zu finden. Gibt es ein Protokoll oder eine Möglichkeit, dem System mitzuteilen, dass es einen spezifischeren Fehler geben soll?
Vielleicht möchten Sie http://dev.eclipse.org/mhonarc/lists/ecclipselink-users/msg00553.html sehen Wenn möglich, zeigen Sie Ihren Code. Ich kann nicht erraten, was passiert, wenn Sie nicht mehr Informationen zur Verfügung stellen. –
Arthur: Danke und ich schätze deine Antwort, aber meine Frage ist allgemeiner. Ich habe meine Frage aktualisiert, um Ihnen eine bessere Vorstellung davon zu geben, wonach ich suche. – rayd09
Haben Sie versucht, den eclipselink.logging.level in persistence.xml zu konfigurieren - http://wiki.eclipse.org/EclipseLink/Examples/JPA/Logging ?? – rochb