Frühjahr RestTemplate und XMLStream Verwendung mit Liste von Objekten
Ich versuche, mit Spring RestTemplate
zum abrufen einer Liste von Employee-Datensätze, wie zum Beispiel:
public List<Employee> getEmployeesByFirstName(String firstName) {
return restTemplate.getForObject(employeeServiceUrl + "/firstname/{firstName}", List.class, firstName);
}
Problem ist, dass web-services (genannt wird), gibt das folgende XML-format:
<Mitarbeiter> <Mitarbeiter> .... </der Mitarbeiter>
<Mitarbeiter> .... </der Mitarbeiter> </Mitarbeiter>
Also beim ausführen der oben beschriebenen Methode bekomme ich folgenden Fehler:
org.springframework.http.converter.HttpMessageNotReadableException: Could not read [interface java.util.List]; nested exception is org.springframework.oxm.UnmarshallingFailureException: XStream unmarshalling exception; nested exception is com.thoughtworks.xstream.mapper.CannotResolveClassException: **employees : employees**
- Hab das gleiche problem :/
- Ich Tat richten Sie die Eigenschaft "alias", um eine Karte mit einem Satz von Wert wie "Mitarbeiter" und der Klasse, ist das Ergebnis, das wir wollen "org. ... .Die Mitarbeiter". Hoffe die können helfen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du bist wahrscheinlich auf der Suche nach so etwas wie dieses:
Sollte marshall richtig, mit dem auto-marshalling.
Stellen Sie sicher, dass der Marshaller und Unmarshaller, die Sie übergeben, in der die parameter RestTemplate Konstruktor hat defaultImplementation gesetzt.
Beispiel:
Ich hatte ein ähnliches problem und löste es, wie in diesem Beispiel:
http://blog.springsource.com/2009/03/27/rest-in-spring-3-resttemplate/
Ich versuchte zu verwenden RestTemplate als RestClient und der folgende code funktioniert für das abrufen der Liste:
Stellen Sie sicher, Ihr Domain-Objekten sind korrekt kommentiert und XMLStream jar im classpath. Es hat zu arbeiten, mit den oben Zustand zufrieden zu sein.