Я пытаюсь получить доступ к методам getter на моем MyModelClass, но мой код возвращает List<LinkedHashMap>
вместо List<MyModelClass>
. Это мой код.
List<MyModelClass> myModelClass=(List<MyModelClass>) restTemplate.postForObject(url,mvm,List.class);
System.out.println("Response= " + myModelClass);
Я попытался напечатать ответ, и я получил ответ JSON, которого ожидаю. но когда я попытался запустить этот код.
System.out.println("Response= " + myModelClass.get(0).getMessage());
Он выдает эту ошибку.
java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to com.XXX.XXX.MyModelClass
Это несоответствие. Может ли кто-нибудь помочь мне избавиться от этой ошибки? спасибо.
MyModelClass
public class MyModelClass{
/**
*
*/
@JsonProperty("id")
public String id;
@JsonProperty("type")
public String type;
@JsonProperty("user")
public String user;
@JsonProperty("message")
public String message;
//getters
Ошибка для
MyModelClass[] myModelClass= restTemplate.postForObject(url,mvm, myModelClass[].class);
org.springframework.http.converter.HttpMessageNotReadableException: не удалось прочитать JSON: невозможно десериализовать экземпляр java.util.ArrayList из токена START_OBJECT
Структура ответа JSON
[{"key1":"value1","key2":"value2","parameters":{"key1":"value1","key2":"value2","key3":"value3","key4":"value4","key5":"value5"}},
{"key12":"value12","key22":"value22","parameters":{"key12":"value12","key22":"value22","key32":"value32","key42":"value42","key52":"value52"}}]
Если есть какое-либо предложение о том, как сопоставить этот вид ответа JSON в RestTemplate, это очень помогло бы. спасибо