Проблема в этом случае заключается в том, что вы не указываете класс, которому ObjectMapper должен попытаться сопоставить ваш jsonString
. Дело еще больше усложняется тем, что тип Foo
является параметром c.
Вам необходимо создать ссылку JavaType
для перехода к objectMapper.readValue
.
private inline fun <reified T> parseJson(): T {
val javaType = objectMapper.typeFactory.constructParametricType(Foo::class.java, T::class.java)
val readValue: Foo<T> = objectMapper.readValue(jsonString, javaType)
return readValue.a
}