Szczerze mówiąc, zagłębiłeś się w tę sprawę tutaj @Zon. Nie jestem pewien, czy mogę ci wystarczająco pomóc, ale mimo to spróbuję.
Punkt badań 1 jest oczywiście najbardziej pragmatycznym rozwiązaniem, aby wszystko działało już teraz. Jeśli zauważysz "nieefektywność" String
w porównaniu z UUID
to coś, o co ciężko bym się upierał. Więc jeśli jest to absolutne nie, dochodzenie powinno być kontynuowane. W przeciwnym razie zadanie zostanie oczywiście wykonane.
Jeśli chodzi o punkty badawcze 2 i 3, uważam, że masz problem z dialektem używanym w PostgreSQL, chociaż nie jestem tutaj w 100% pewien. Zwłaszcza PostgreSQL ma kilka „niesamowitych” typów, ale nie zawsze działają one automatycznie we wszystkich scenariuszach. Opieram tutaj swoje "zgadywanie" na zmuszenie PostgreSQL do używania BYTEA
zamiast OID
na wypadek, gdybyś chciał wyłączyć Postgresa TOAST
zdolność. Staje się to szczególnie przydatne, jeśli zdecydujesz się używać Postgresa do swojego sklepu z wydarzeniami i chcesz mieć możliwość rzeczywistego przeglądania treści wydarzeń. Ten post na blogu na przykład określa, jak sobie z tym poradzić. Co ważniejsze, ten blog
post pokazuje, jak można na przykład dostosować używany dialekt. Może to mogłoby ci służyć w rozwiązaniach 2 i 3?
Opcja 4 powinna w tym przypadku być najbardziej logicznym rozwiązaniem. Ale z twojej odpowiedzi wynika, że nie udało ci się to w tej chwili zadziałać. Podczas łączenia Axona ze Springiem SpringAxonAutoConfigurer
(z którego odwołujesz się do registerAggregateBeanDefinitions
wierzę, że metoda z wierzę) automatycznie sprawdzi konfigurowalne ziarna na Twoim Aggregate. Robi to na podstawie pól zdefiniowanych w @Aggregate
(tj. Adnotacja do stereotypu Wiosna Axona). Dokładniej, możesz użyć repository
pole w @Aggregate
aby zdefiniować nazwę ziarna repozytorium, którego chcesz użyć.
Powinieneś więc po prostu być w stanie dostarczyć GenericJpaRepository
fasola z żądanym identifierConverter
. Nazwa tego ziarna może być określona w @Aggregate
adnotacja w Twoim MyAggregate
, aby autokonfiguracja Axona mogła ją poprawnie pobrać. Mam nadzieję, że to ci pomoże!