-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Basic information
- Axon Framework version: 4.11.0
- JDK version: 21
- Kotlin Extension version: 4.11.0
Steps to reproduce
Using the Kotlin Serializer like this:
val json = Json {
serializersModule = AxonSerializersModule
}
KotlinSerializer(serialFormat = json)
Expected behaviour
MetaData is serialised.
Actual behaviour
Using the Kotlin Serializer gives me the following error:
Serializer for class 'MetaData' is not found.
Please ensure that class is marked as '@Serializable' and that the serialization compiler plugin is applied.
kotlinx.serialization.SerializationException: Serializer for class 'MetaData' is not found.
Please ensure that class is marked as '@Serializable' and that the serialization compiler plugin is applied.
at kotlinx.serialization.internal.PlatformKt.serializerNotRegistered(Platform.kt:36)
at kotlinx.serialization.SerializersKt__SerializersJvmKt.serializer(SerializersJvm.kt:77)
at kotlinx.serialization.SerializersKt.serializer(Unknown Source)
at org.axonframework.extensions.kotlin.serialization.KotlinSerializer$serializerFor$serializer$1.invoke(KotlinSerializer.kt:162)
at org.axonframework.extensions.kotlin.serialization.KotlinSerializer$serializerFor$serializer$1.invoke(KotlinSerializer.kt:162)
at org.axonframework.extensions.kotlin.serialization.KotlinSerializer.serializerFor$lambda$0(KotlinSerializer.kt:162)
at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708)
at org.axonframework.extensions.kotlin.serialization.KotlinSerializer.serializerFor(KotlinSerializer.kt:162)
at org.axonframework.extensions.kotlin.serialization.KotlinSerializer.serialize(KotlinSerializer.kt:68)
at org.axonframework.serialization.SerializedObjectHolder.serializeMetaData(SerializedObjectHolder.java:77)
at org.axonframework.messaging.GenericMessage.serializeMetaData(GenericMessage.java:172)
at org.axonframework.messaging.MessageDecorator.serializeMetaData(MessageDecorator.java:71)
at org.axonframework.eventsourcing.eventstore.jdbc.statements.JdbcEventStorageEngineStatements.appendEvents(JdbcEventStorageEngineStatements.java:111)
at org.axonframework.eventsourcing.eventstore.jdbc.JdbcEventStorageEngine.appendEvents(JdbcEventStorageEngine.java:233)
at org.axonframework.eventsourcing.eventstore.jdbc.JdbcEventStorageEngine.lambda$null$3(JdbcEventStorageEngine.java:412)
at org.axonframework.common.jdbc.JdbcUtils.createSqlStatement(JdbcUtils.java:245)
at org.axonframework.common.jdbc.JdbcUtils.executeBatch(JdbcUtils.java:166)
at org.axonframework.eventsourcing.eventstore.jdbc.JdbcEventStorageEngine.lambda$appendEvents$5(JdbcEventStorageEngine.java:410)
at org.axonframework.common.transaction.TransactionManager.executeInTransaction(TransactionManager.java:47)
at org.axonframework.eventsourcing.eventstore.jdbc.JdbcEventStorageEngine.appendEvents(JdbcEventStorageEngine.java:409)
at org.axonframework.eventsourcing.eventstore.AbstractEventStorageEngine.appendEvents(AbstractEventStorageEngine.java:105)
at org.axonframework.eventsourcing.eventstore.AbstractEventStore.prepareCommit(AbstractEventStore.java:66)
at org.axonframework.eventhandling.AbstractEventBus.doWithEvents(AbstractEventBus.java:256)
at org.axonframework.eventhandling.AbstractEventBus.lambda$null$11(AbstractEventBus.java:170)
at org.axonframework.messaging.unitofwork.MessageProcessingContext.notifyHandlers(MessageProcessingContext.java:72)
at org.axonframework.messaging.unitofwork.DefaultUnitOfWork.notifyHandlers(DefaultUnitOfWork.java:109)
at org.axonframework.messaging.unitofwork.AbstractUnitOfWork.changePhase(AbstractUnitOfWork.java:236)
at org.axonframework.messaging.unitofwork.AbstractUnitOfWork.commitAsRoot(AbstractUnitOfWork.java:87)
at org.axonframework.messaging.unitofwork.AbstractUnitOfWork.commit(AbstractUnitOfWork.java:75)
at org.axonframework.messaging.unitofwork.DefaultUnitOfWork.executeWithResult(DefaultUnitOfWork.java:95)
at org.axonframework.commandhandling.SimpleCommandBus.lambda$handle$2(SimpleCommandBus.java:200)
at org.axonframework.tracing.Span.runSupplier(Span.java:163)
at org.axonframework.commandhandling.SimpleCommandBus.handle(SimpleCommandBus.java:191)
at org.axonframework.commandhandling.SimpleCommandBus.doDispatch(SimpleCommandBus.java:165)
at org.axonframework.commandhandling.SimpleCommandBus.lambda$dispatch$1(SimpleCommandBus.java:131)
at org.axonframework.tracing.Span.run(Span.java:101)
at org.axonframework.commandhandling.SimpleCommandBus.dispatch(SimpleCommandBus.java:125)
at org.axonframework.commandhandling.gateway.AbstractCommandGateway.send(AbstractCommandGateway.java:76)
at org.axonframework.commandhandling.gateway.DefaultCommandGateway.send(DefaultCommandGateway.java:83)
at org.axonframework.commandhandling.gateway.DefaultCommandGateway.sendAndWait(DefaultCommandGateway.java:100)