Generics mit Spring RESTTemplate

Habe ich eine Klasse so:

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;
 }

}

und ich benutze das resttemplate wie folgt:

...
Wrapper<Model> response = restTemplate.getForObject(URL, Wrapper.class, myMap);
Model model = response.getData();
...

Aber es wirft ein:

ClassCastException

Habe ich gelesen, dass: Problem wenn Sie versuchen, zu verwenden Jackson in java aber nicht helfen. Es gibt einige Themen zu meinem problem etc.: https://jira.springsource.org/browse/SPR-7002 und https://jira.springsource.org/browse/SPR-7023

Irgendwelche Ideen?

PS: Mein Fehler ist, dass:

java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to a.b.c.d.Model

Ich denke resttemplate kann nicht verstehen, meine generische variable und vielleicht nimmt es Sie wie ein Objekt statt der generischen T. es wird Also eine LinkedHashMap. Sie können Lesen hier Es sagt, dass bei der Erklärung von dem, was es marshalls:

JSON Type | Java-Typ

Objekt | LinkedHashMap

InformationsquelleAutor der Frage kamaci | 2011-11-13

Schreibe einen Kommentar