Я пытаюсь сериализовать свойства Joda DateTime как ISO-8601 с помощью Spring Boot v1.2.0.BUILD-SNAPSHOT Вот мое очень простое приложение REST.
@RestController
@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {
class Info{
private DateTime dateTime;
public Info(){
dateTime = new DateTime();
}
public DateTime getDateTime() {
return dateTime;
}
public void setDateTime(DateTime dateTime) {
this.dateTime = dateTime;
}
}
@RequestMapping("/info")
Info info() {
return new Info();
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean
public Module getModule(){
return new JodaModule();
}
}
DateTime серируется как временная метка, например. { "DateTime": 1415954873412} Я пробовал добавить
@Bean
@Primary
public ObjectMapper getObjectMapper() {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,
false);
return objectMapper;
}
но это тоже не помогло. Итак, как мне настроить jackson в Spring Boot для сериализации с использованием формата ISO-8601? BTW: я добавил только следующие зависимости к моей конструкции gradle
compile("joda-time:joda-time:2.4")
compile("org.jadira.usertype:usertype.jodatime:2.0.1")
compile("com.fasterxml.jackson.datatype:jackson-datatype-joda:2.4.2");