Jackson fails to serialize Joda DateTimeFormatter
You can take a look here for more details and options.
Basically, you need to create a Serializer
, something like:
public class ItemSerializer extends StdSerializer<Item> { public ItemSerializer() { this(null); } public ItemSerializer(Class<Item> t) { super(t); } @Override public void serialize(Item value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { jgen.writeStartObject(); jgen.writeNumberField("id", value.id); jgen.writeStringField("itemName", value.itemName); jgen.writeNumberField("owner", value.owner.id); jgen.writeEndObject(); }}
Then you can annotate your class with: @JsonSerialize
, something like:
@JsonSerialize(using = ItemSerializer.class)public class Item { public int id; public String itemName; public User owner;}