Как настроить форматер даты через Дженсон / Джерси?
Я использую Джерси для своих служб RESTful, а Дженсон - для преобразования JSON/POJO. Для Genson нет настройки, я просто помещаю его в путь к классам, и он просто работает, за исключением того, что он генерирует ошибку при разборе даты, потому что формат является неожиданным.
Теперь, если бы я делал это как сервлет, используя Gson, я установил формат даты для экземпляра Gson, который я поддерживаю. Это заставляет синтаксический анализ POJO использовать правильный формат. Я вижу, что у Genson аналогичный интерфейс, но я не знаю, как получить экземпляр из службы сервлетов в Джерси или из контекста Spring, чтобы я мог установить формат.
Итак, короткий вопрос: как установить формат даты для Genson при запуске через Джерси?
1 ответ
Для настройки экземпляров Genson вы можете использовать класс Genson.Builder (в этом он похож на Gson). Тогда ты должен сделать это с Джерси.
@Component
@Provider
public class GensonProvider implements ContextResolver<Genson> {
private final Genson genson = new Genson.Builder().setDateFormat(yourDateFormat).create();
@Override
public Genson getContext(Class<?> type) {
return genson;
}
}
Вы также можете посмотреть, как Genson интегрируется в Джерси.