Hi Jon, thanks for your article!
After moving an implementation of generating JSON output for ORDS from APEX_JSON to JSON_OBJECT_T, we saw that:
Out of interest, can you reproduce this behavior in your tests, or does adding "apex_util.prn ( l_json_clob, false );" take the same time, independent if the CLOB comes from JSON_OBJECT_T or APEX_JSON?
BR Paul
Gary Liddle
Hi Jon,
The json_object_t.PUT procedure does not escape multi-byte characters like apex_json.write does. ie apex_json.write('1', '£'); -- {"1":"\u00A3"} l_json.PUT('2', '£'); -- {"2":"£"}
and l_json.PUT('4', APEX_ESCAPE.JSON('£')); -- {"3":"\u00A3"}
And one does not appear to be able to escape the input to PUT without a '\' getting escaped into '\\' by the PUT procedure.
Some REST API's require multi-byte characters to be escaped , which is definitly a problem for me.