Deserialisierung Probleme mit Joda Time / Jackson 2 / Frühjahr - Können nicht instanziiert Wert des Typs [einfach Typ, Klasse org.joda.Zeit.DateTime]
Ich bin immer eine Ausnahme, wenn Sie versuchen zu Deserialisieren eines JSON-string enthält Datums-Zeichenketten zu POJO mit Joda.
Ich bin mit Jackson2 mit Feder und Robospice.
Ich bin immer folgende exception:
Konnte nicht Lesen, JSON: Kann nicht instanziiert Wert des Typs [einfach Art,
class org.joda.Zeit.DateTime] aus String-Wert
('2014-07-25T00:00:00'); no-single-String-Konstruktor/factory-Methode
Hier der code, ich habe derzeit:
MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter
= new MappingJackson2HttpMessageConverter();
mappingJackson2HttpMessageConverter.getObjectMapper().registerModule(new JodaModule());
msgConverters.add(mappingJackson2HttpMessageConverter);
restTemplate.setMessageConverters(msgConverters);
HttpEntity<?> httpEntity = new HttpEntity<Object>(headers);
final ResponseEntity<HolidayList> responseEntity
= restTemplate.exchange(url, HttpMethod.GET, httpEntity,HolidayList.class);
Den POJO-Felder definiert werden, etwa so:
private DateTime departureDate;
Hatte ich diese Arbeit in Jackson1... aber kann nicht scheinen, um es zu bekommen arbeiten in Jackson2.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für Maven Nutzer: Dieses problem tritt auf, wenn Sie mit jackson und joda aber vergessen sind der jackson-datatype-joda. Für die neuesten jackson-version, da diese Antwort (2.6.3), ist nach den Abhängigkeiten, die Sie haben in der pom-Datei.
NoSuchMethodError: org.joda.time.format.DateTimeFormatter.withZoneUTC()
, aktualisieren Sie Ihren Joda Abhängigkeiten.Ich glaube mein Problem war einfach, dass ich unter verschiedenen Versionen des jackson-joda-Komponente alles andere.
Am Ende habe ich diese in meinem Gradle-Datei