0

我有一个 Spring Boot 微服务,它有一个端点可以从表中删除条目。我正在使用 Spring Data JPA 来执行此操作。当我调用 api、发送 HTTP 请求并且 JPA 存储库删除数据时,它工作正常。OSIV 已启用,它会自动注册 EntityManager,创建数据库连接并确保它在 Web 请求的整个生命周期内都可用。

我有一个由 Spring Redis 在同一个应用程序中提供的 Redis 消息订阅者,它监听事件并调用同一个 JPA 存储库以从表中删除数据。我注意到从订阅者调用时 JPA 存储库没有执行删除/更新/插入。我了解此流程中未创建的事务存在问题。我尝试使用@Transactional,但由于缺少事务,它仍然失败。

如果 Redis 消息容器需要一些其他配置来启用 JPA 存储库的事务,请帮助我。

4

0 回答 0