Generics con Spring RESTTemplate
Tengo una clase como esa:
public class Wrapper<T> {
private String message;
private T data;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
}
y uso resttemplate de la siguiente manera:
...
Wrapper<Model> response = restTemplate.getForObject(URL, Wrapper.class, myMap);
Model model = response.getData();
...
Sin embargo, arroja un:
ClassCastException
Yo lei eso: Problema al intentar usar Jackson en Java pero no ayudó. Hay algunos temas relacionados con mi problema, etc .:https: //jira.springsource.org/browse/SPR-700 yhttps: //jira.springsource.org/browse/SPR-702
¿Algunas ideas
PD Mi error es que:
java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to a.b.c.d.Model
Creo que resttemplate no puede entender mi variable genérica y tal vez la acepta como un Objeto en lugar de una T. genérica, por lo que se convierte en LinkedHashMap. Puedes leerloaqu Dice que al explicar de lo que ordena a:
JSON Type | Java Type
object | LinkedHashMap