I would expect an empty Object without any field to be rendered as {}
When I drove a Spring Boot Rest API with an Acceptance Test step by step, I tried to respond with an empty Object at one point, expecting an empty Json Object as a response.
However, Spring noticed that Jackson would not serialize this Object, and instead jumped to the next Converter which caused unrelated Issues. It took me about 1 hour of analyzing at the wrong end, to figure out the real cause.
I think it would be beneficial for developers, if the default of FAIL_ON_EMPTY_BEANS was false, and an empty Json Object would be created in that case.
Default settings changes are possible for the major version upgrade, although we'd need to figure out some way to gauge how popular change proposals are.
Marking as 3.0.
Presupposing the intention of this feature is to warn the user about potential mistakes in serialization configuration, I'd assert some arguments against a survey/proposal precluding this change:
{}. I don't see any ambiguity there which warrants blocking the user until they confirm this is what they expect.
Most helpful comment
Default settings changes are possible for the major version upgrade, although we'd need to figure out some way to gauge how popular change proposals are.
Marking as 3.0.