Gus
11/04/2021, 5:05 PMObjectOutputStream
) with Kotlin data classes, and I tried using this library as follows:
@Serializable
internal data class FileSessionPublicKeyData(
val keyId: ByteArray,
val keyDer: ByteArray,
val creationTimeTimestamp: Long
)
But I get java.io.NotSerializableException: tech.relaycorp.awala.keystores.file.FileSessionPublicKeyData
when I try to save a value to a file using ObjectOutputStream
, which I guess that @Selializable
doesn't actually implement Java's Serializable
interface. Is there any way to do this? I don't want to use JSON, protobuff, etc.ephemient
11/04/2021, 8:08 PMkotlinx.serialization.Serializable
has no relation to java.io.Serializable
ephemient
11/04/2021, 8:13 PMimport java.io.Serializable
class FileSessionPublicKeyData(
...
) : Serializable {
companion object {
// required if you want to allow for serialization across compatible changes
private const val serialVersionUID = (some constant Long)
}
}
ephemient
11/04/2021, 8:14 PMimport java.io.Serializable as JavaSerializable
import kotlinx.serialization.Serializable
@Serializable
class FileSessionPublicKeyData(
...
) : JavaSerializable
Gus
11/04/2021, 9:08 PMPaul Griffith
11/05/2021, 2:29 PM