У меня есть класс в моем приложении Spring Boot 3, которое отправляет сообщение Kafka, и обновляет статус уведомления и отчет после отправки сообщения: < /p>
public class SomeSender {
KafkaTemplate kafkaTemplate;
NotificationService notificationService;
NotificationReportService notificationReportService;
public void send(Notification notification) {
kafkaTemplate.send(notification).whenComplete((success, error) -> {
updateNotificationStatus(notification);
notificationReportService.createReport(notification);
});
}
private void updateNotificationStatus(Notification notification) {
// some logic
notificationService.update(notification);
}
}
< /code>
оба уведомления service.update (уведомление) и уведомление reportservice.createreport (уведомление) помечены @Transactional. < /p>
Проблема заключается в том, что статус уведомления не обновляется, и некоторые отчеты частично сохраняются или не сохранены вообще. Похоже, что транзакционные методы не работают правильно внутри WhatComplete ().
Что может быть причиной этой проблемы, и как я могу убедиться, что методы @Transaction работают в этом случае?
Подробнее здесь: https://stackoverflow.com/questions/795 ... ot-working
Opplyblefuture.whencoMplete () с вызовом транзакционного метода не работает ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Гарантируется ли, что нарушение ограничения будет отмечено в конце транзакционного блока?
Anonymous » » в форуме JAVA - 0 Ответы
- 29 Просмотры
-
Последнее сообщение Anonymous
-