am having an issue with serialization of sealed cl...
# ktor
d
am having an issue with serialization of sealed classes and data classes
Copy code
fun Application.configureSerialization() {
    install(ContentNegotiation) {
        json(
            contentType = ContentType.Application.Json,
            json = Json {
                // Json configs
                ignoreUnknownKeys = true
                isLenient = true
                encodeDefaults = true
                coerceInputValues = true
                serializersModule = SerializersModule {
                    polymorphic(ApiResponseMessage::class) {
                        subclass(ApiResponseMessage.SuccessMessage.serializer())
                        subclass(ApiResponseMessage.ErrorMessage.serializer())
                    }
                }
            }
        )
but I keep running into this mismatch Type mismatch. Required: KSerializer<TypeVariable(Sub)> Found: () → Unit my sealed classes
Copy code
@Serializable
sealed class ApiResponseMessage {
    @Serializable
    data class SuccessMessage<T : Any>(val data: T) : ApiResponseMessage()
    @Serializable
    data class ErrorMessage(val error: String) : ApiResponseMessage()

}
a
polymorphic(..)
is for openly polymorphic hierarchies. But I’m not sure how this compiles,
SuccessMessage.serializer
should require a type serializer 🤔