Получение новых значений атрибутов измененой сущности в TransactionalEventListener(BEFORE_COMMIT)

Добрый день !
Подскажите пожалуйста, каким образом я могу получить новые значения атрибутов измененной сущности в TransactionalEventListener в BEFORE_COMMIT.

https://doc.cuba-platform.com/manual-7.1-ru/manual.html#entityChangedEvent
Пример:

Сведения
@TransactionalEventListener(phase = TransactionPhase.BEFORE_COMMIT)
public void beforeCommit(EntityChangedEvent<Variable, UUID> event) {
    AttributeChanges changes = event.getChanges();
    Object oldValue = changes.getOldValue("");
}

Если это невозможно в данном месте, какой механизм лучше всего использовать для получения старого и нового значения сущности без дополнительных запросов в БД ?

1 симпатия

Через transactionalDataManager.

Order newOrder = transactionalDataManager.load(event.getEntityId())
                    .view("order-full-view")
                    .one();
Status newStatus = newOrder.getStatus();

В фазе BEFORE_COMMIT вы получите новую/измененную сущность, которая будет закомичена в БД при успехе транзакции.

1 симпатия