klaxon
klaxon copied to clipboard
Cannot parse array of Long
I'm using version 5.2. No problem with Lists but I need Arrays.
Test code to reproduce the error:
data class TestModel(val ids: Array<Long>)
@Test
fun arrayOfLongs() {
val json = "{\"ids\":[1,2,3]}"
val klaxon = Klaxon()
val testModel = klaxon.parse<TestModel>(json)
assertEquals(3, testModel?.ids?.size)
}
Stacktrace:
array element type mismatch
java.lang.IllegalArgumentException: array element type mismatch
at java.lang.reflect.Array.set(Native Method)
at com.beust.klaxon.DefaultConverter.fromCollection(DefaultConverter.kt:154)
at com.beust.klaxon.DefaultConverter.fromJson(DefaultConverter.kt:35)
at com.beust.klaxon.JsonObjectConverter.retrieveKeyValues(JsonObjectConverter.kt:207)
at com.beust.klaxon.JsonObjectConverter.initIntoUserClass(JsonObjectConverter.kt:67)
at com.beust.klaxon.JsonObjectConverter.fromJson(JsonObjectConverter.kt:32)
at com.beust.klaxon.DefaultConverter.fromJsonObject(DefaultConverter.kt:214)
at com.beust.klaxon.DefaultConverter.fromJson(DefaultConverter.kt:36)
at com.beust.klaxon.Klaxon.fromJsonObject(Klaxon.kt:296)