Displaying XML data is rather simple. HTML browsers understand XML too.
Gives:

But what about JSON?
Doesn't work ...
Works, but JSON is displayed simply as an unformatted text string.
To get a formatted output, for test cases you can use CL_DEMO_OUTPUT.
Gives:

The big but: CL_DEMO_OUTPUT is not intended for productive usage.
Now look what I've "found": JSON, Transformation to HTML
You can use the XSL transformation SJSON2HTML in order to transform JSON to formatted HTML and use this with a browser.
Gives:

Even interactive. Maybe not perfect but at least something.
SJSON2HTML is available in release 7.02 already.
DATA itab TYPE TABLE OF i WITH EMPTY KEY.
itab = VALUE #( ( 1 ) ( 2 ) ( 3 ) ).
CALL TRANSFORMATION id SOURCE itab = itab
RESULT XML DATA(xml).
cl_abap_browser=>show_xml( xml_xstring = xml ).Gives:

But what about JSON?
DATA itab TYPE TABLE OF i WITH EMPTY KEY.
itab = VALUE #( ( 1 ) ( 2 ) ( 3 ) ).
DATA(json_writer) = cl_sxml_string_writer=>create(
type = if_sxml=>co_xt_json ).
CALL TRANSFORMATION id SOURCE itab = itab
RESULT XML json_writer.
DATA(json) = json_writer->get_output( ).
cl_abap_browser=>show_xml( xml_xstring = json ).Doesn't work ...
cl_abap_browser=>show_html( html_string =
cl_abap_codepage=>convert_from( json ) ).Works, but JSON is displayed simply as an unformatted text string.
To get a formatted output, for test cases you can use CL_DEMO_OUTPUT.
cl_demo_output=>display_json( json ).Gives:

The big but: CL_DEMO_OUTPUT is not intended for productive usage.
Now look what I've "found": JSON, Transformation to HTML
You can use the XSL transformation SJSON2HTML in order to transform JSON to formatted HTML and use this with a browser.
CALL TRANSFORMATION sjson2html SOURCE XML json
RESULT XML DATA(html).
cl_abap_browser=>show_html( html_string =
cl_abap_codepage=>convert_from( html ) ).Gives:

Even interactive. Maybe not perfect but at least something.
SJSON2HTML is available in release 7.02 already.