Unfortunately this belongs to a list of (really-)nice-to-have features that have not yet been implemented. There is a github issue this, although I don't remember off-hand the id.
My idea is to allow decorator of sorts, possibly added via `@JsonSerialize`; but one question is as to where to allow addition of entries. Given streaming nature of data-binding, choices would really be before and/or after; perhaps callback would be called twice, once after START_OBJECT (and possibly type id), once right before END_OBJECT.
In the meantime, use of custom serializers is probably the way to go: use of delegating-serializer might help. You could, for example, use 'ObjectMapper.valueToTree()' to get a JsonNode that represents input value, then append fields, and serialize that. In case of delegating serializer, this would mean using `JsonNode` as the delegate value.
It should be possible to make this work in somewhat generic fashion by adding `BeanSerializerModifier`, taking original serializer, and maybe using that to serialize into `TokenBuffer`, then reading as tree... but it does get
unnecessarily complicated.
Come to think of this; another way to use `BeanSerializerModifier` would be to create and custom `BeanPropertyWriter` instances. This would probably be the cleanest way, as the property/-ies added would behave much like any other property. Quite a bit of work, but could work really well.
-+ Tatu +-