Juergen Hoeller opened SPR-15270 and commented
Along with support for the JSON Binding API (#19490) in the form of a Jackson-style conversion for payload objects, let's also consider direct support for the underlying JSON Processing API (https://json-processing-spec.java.net/).
We could accept a JsonObject
/JsonArray
method argument as request payload and convert a corresponding return value to a response payload, using JsonReader
/JsonWriter
underneath the covers. This would allow handler method implementations to programmatically introspect an incoming JSON payload structure and use a JsonObjectBuilder
/JsonArrayBuilder
to programmatically build a response payload.
Beyond that, we could also allow for retrieving JsonParser
/JsonGenerator
handles for the JSON-P streaming API: both as handler method arguments, but referring to the request payload (not fully parsed yet) and the upcoming response payload (to be built in a streaming fashion), respectively. This would be equivalent to our current support for declaring a Reader
/Writer
for direct request/response payload access.
Issue Links: - #19490 Support for JSON Binding API (JSON-B)
Comment From: spring-projects-issues
Juergen Hoeller commented
At pretty much the same level, we could also support Jackson's streaming API as well as Gson's in terms of direct JsonReader
/JsonWriter
arguments on MVC handler methods.
http://www.baeldung.com/jackson-streaming-api http://www.mkyong.com/java/jackson-streaming-api-to-read-and-write-json/
https://sites.google.com/site/gson/streaming https://www.mkyong.com/java/gson-streaming-to-read-and-write-json/