Как получить доступ к временной метке события в @EventSourcingHandler в Axon Framework?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как получить доступ к временной метке события в @EventSourcingHandler в Axon Framework?

Сообщение Anonymous »

Я использую Spring Boot с Axon (

Код: Выделить всё

axon-eventsourcing:4.5.8
) и хотите зафиксировать временную метку события внутри агрегата.
Мой обработчик выглядит следующим образом:

Код: Выделить всё

@EventSourcingHandler
public void on(FooEvent event, @Timestamp Instant requestedAt) {
...
}
Это работает нормально, однако в документации Axon сказано:

Параметры типа Instant будут разрешаться в метку времени EventMessage. Это время, когда было создано событие.

Исходя из этого, я ожидал, что это тоже сработает:

Код: Выделить всё

@EventSourcingHandler
public void on(FooEvent event, Instant requestedAt) {
...
}
Но тогда мои тесты с приспособлениями завершаются неудачей:

Код: Выделить всё

No resource of type [java.time.Instant] has been registered. It is required for one of the handlers being executed.
Итак, мой вопрос: это ошибка документации, или я что-то упускаю из разрешения параметров в @EventSourcingHandler?

Документы Axon также указывают для @Timestamp

Указание аннотации о том, что параметр в методе Event Handler должен содержать временную метку события Сообщение. Тип параметра должен быть назначен из Instant.

Это наводит меня на мысль, что это касается только @EventHandler, а не @EventSourcingHandler. Я что-то упускаю или неправильно истолковываю?

Подробнее здесь: https://stackoverflow.com/questions/797 ... -framework
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»