2016-05-25 2 views
1

Привет Я использую Mobile First verison 7.1. У меня простой адаптер, который возвращает ответ JSON. Ответ содержит дату, и я использую для этого LocalDateTime. Он не поддерживается Jax-Rs, поэтому я использую XmljavaTypeAdapter.XmlJavaTypeAdapter в MobileFirst 7.1 не работает

Я создал адаптер для LocalDateTime и аннотированный поглотитель (также пытался аннотирования само поле) с @XmlJavaTypeAdapter аннотацию:

@XmlJavaTypeAdapter(LocalDateTimeAdapter.class) 
public LocalDateTime getDate() { 
    return date; 
} 

По какой-то причине это аннотацию игнорируется.

+0

Очевидно, что XmlJavaTypeAdapter не так полезно для ответа JSON, вы можете преобразовать его в строку и включить его в JSON в виде строки, я буду стараться, чтобы увидеть, если есть что-то лучше, чем строка, и дайте знать –

+0

Если вы используете Джексона в качестве поставщика JSON, убедитесь, что зарегистрирован JacksonJaxbJsonProvider, а не только JacksonJsonProvider. Они оба включены в один модуль, но первый из них поддерживает аннотации JAXB. –

+0

В MobileFirst мы используем JacksonJaxbJsonProvider OOTB - вам не нужно включать этого провайдера самостоятельно –

ответ

0

Нашли решение, на самом деле оно использует Джексон. Я создал Джексон сериалайзер и аннотированный типа с этим:

@JsonSerialize(using = LocalDateTimeSerializer.class) 
private LocalDateTime date; 
Смежные вопросы