Aktualisieren Sie ein Objekt innerhalb des neuen Transaktionsbereichs

Ich habe ein Problem mit Transaktionsgrenzen und kann nicht herausfinden, was falsch läuft.

@Transactional( propagation = Propagation.REQUIRED )
Class A {
void methodA() {
     try {
     new B().callMethodB(obj)
     } catch(Exception e) {
           updateSomeProperty(obj1)
     }
}
@Transactional(propagation = Propagation.REQUIRES_NEW)
void updateSomeProperty(Object obj1) {
     obj1.setProperty(1);
     obj1.save();       
}
        }

 Class B {

   public void callMethodB(Object obj) throws Exception {
    throws new Exception();  
 }

 }

Das Problem ist, dass mein Objekt nicht aktualisiert wird, wenn der Fehler ausgelöst wird. Ich habe auch versucht, SQL-Code innerhalb der Methode auszulösenupdateSomeProperty aber das hat auch nicht geklappt.

Grundsätzlich möchte ich die Eigenschaft des Objekts aktualisieren, unabhängig davon, ob die Ausnahme ausgelöst wird.
Irgendwelche Ideen ??

Antworten auf die Frage(5)

Ihre Antwort auf die Frage