V rozhraní JAX-RS 2.1 se interní knihovna používaná pro serializaci a deserializaci mezi objekty JSON a objekty Java změnila z Jackson na Yasson. Yasson je implementace odkazů JSON-B. Jackson a Yasson budou serializovat objekty související s časem různými způsoby, např.:
| Jackson | Yasson | |
|---|---|---|
| java.util.Date | 726213720000 | 1993-02-05T06:02:00Z[UTC] |
| java.util.Calendar | 726213720000 | 1993-02-05T00:00:00-06:00[America/Chicago] |
Veškeré metody prostředků JAX-RS, které produkují nebo spotřebovávají data typu JSON mohou být ovlivněny. Toto pravidlo označí veškerá pole java.util.Date nebo java.util.Calendar, která jsou obsaženy v objektu vytvořeném nebo spotřebovaném metodou prostředku JAX-RS.
Dále je uveden příklad metod prostředku JAX-RS, které vytvářejí a spotřebovávají objekt Java obsahující pole java.util.Date a java.util.Calendar:
Toto pravidlo označuje java.util.Date a java.util.Calendar pole v DataObject objektu.
Pro toto pravidlo bude k dispozici automatická oprava, která přidá anotaci @JsonbDateFormat(value = JsonbDateFormat.TIME_IN_MILLIS ) k těmto polím, aby se výstup převedl na epochu milliseconds.After automatická oprava se použije třída DataObject bude aktualizována takto:
Poznámka: Pro přístup k @javax.json.bind.annotation.JsonbDateFormat bude přidána anotace automatickou opravou, Automatická oprava přidá funkci jsonb do vašeho počítače Liberty server.xml konfigurační soubor. Například přidejte funkci jsonb-1.0, používáte-li funkci jaxrs-2.1.
Další podrobnosti o rozdílech v chování mezi Jackson a Yason viz článek Je čas na standard vazby JSON? porovnávající chování Jackson a JSON-B.