Spring JPA Repository funktioniert nicht in CDI-verwalteten TransaktionenJava

Java-Forum
Anonymous
 Spring JPA Repository funktioniert nicht in CDI-verwalteten Transaktionen

Post by Anonymous »

Ich habe versucht, das Spring JPA Repository im CDI-Transaktionskontext zu verwenden, habe aber den Fehler „WFTXN0084: UserTransaction-Zugriff ist im aktuellen Kontext verboten“ erhalten. Die Umgebung ist JBoss EAD 8 / Spring 6.1 / Jakarta EE 10.
Ich habe eine JSF-Backing-Bean und ein Serviceobjekt (CDI Managed Bean) wird in die Backing-Bean eingefügt
@Named("registrantDetail")
@ViewScoped
public class RegistrantPageBean {

@Inject
private RegistrantService registrantService;

Das Serviceobjekt ist mit @Transactional (jakarta.transaction.Transactional) annotiert
@Named("registrantService")
@ApplicationScoped
@Transactional
public class RegistrantServiceBean implements RegistrantService {

@Inject
@SpringBean
private RegistrantRepository registrantRepository;

Die RegistrantServiceBean verfügt über ein injiziertes RegistrantRepository. Das @SpringBean ist ein benutzerdefinierter Qualifizierer, der verwendet wird, um den Spring ApplicationContext zu umschließen, um eine Spring Bean im CDI-Kontext zu erzeugen.
Soweit so gut, nur wenn ich Folgendes innerhalb der RegistrantServiceBean ausführe:
Registrant = registrantRepository.findById(id);

Ich erhalte die folgende Fehlermeldung: „Verursacht durch: java.lang.IllegalStateException: WFTXN0084: UserTransaction-Zugriff ist im aktuellen Kontext verboten“.
Gibt es eine Möglichkeit, das Problem zu beheben und es zum Laufen zu bringen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post