[
https://issues.apache.org/jira/browse/NIFI-12456?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Stieglitz updated NIFI-12456:
------------------------------------
Status: Patch Available (was: In Progress)
> Improve leniency of JSON readers and flexibility of JSON Writer
> ---------------------------------------------------------------
>
> Key: NIFI-12456
> URL: https://issues.apache.org/jira/browse/NIFI-12456
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Extensions
> Reporter: Mark Payne
> Assignee: Daniel Stieglitz
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Currently, we adhere to the JSON specification fairly strictly, with the
> exception of allowing for "JSON Lines" / ndjson / ldjson.
> However, the Jackson library allows for several {{Features}} that we do not
> expose, which may be helpful for handling data that does not strictly adhere
> to the schema, or where there are preferences in serialization.
> For example, {{JsonParser.Feature}} allows for the ability to allow comments
> in JSON (to include lines beginning with {{{}//{}}}, {{{}/*{}}}, and "YAML
> Style" comments (#)). Additionally, it allows for single-quotes for field
> names or no quoting at all. While these do not adhere to the specification,
> they are common enough for the parser to support them, and we should too.
> Similarly, on the serialization side, we have had requests to support writing
> decimal values without use of scientific notation, which can be achieved by
> enabling the {{WRITE_BIGDECIMAL_AS_PLAIN}} feature.
> We should expose these options on the JsonTreeReader and the JSON Writer. I
> don't know of any downside to enabling the leniency / non-standard options,
> so it probably makes sense to simply enable them all by default. Though there
> is argument for introducing a new "Parsing Leniency" option that allows the
> user to disable these features.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)