And the invoice goes... to the ASF?

Where can I raise the issue? I don't think I have write access to the Sling 
Jira.
And what would be the best approach? Re-activate the 
org.apache.sling.commons.json package?

Thanks, Juerg

On 12.05.2020 17:47, Robert Munteanu wrote:
On Tue, 2020-05-12 at 16:09 +0200, JCR wrote:
Thanks Daniel, John,

As the app makes high usage of dynamic JCR Node features (based on
nt:unstructured, mixins, etc), a relatively static sling model class
seems a bit unpractical, though a typesafe contract would be
desirable,
of course.

On the other hand, the JsonItemWriter would almost be ideal but is
not
present in Sling 11 anymore. Actually, the entire commons.json
package
disappeared. Seemingly, this package has been replaced by Apache
Johnzon
but I cannot find anything equivalent to JsonItemWriter.

Anybody aware of its substitute?
FWIW, the rendering in the DefaultGetServlet is not accessible to the
outside world [1]. I could imagine that we could open on the default
renderers in ways that do not break encapsulation.

Feel free to raise an issue if that's interesting to you. Obviously, a
PR would be even better :-)

Thanks,
Robert

Thanks,
Juerg


On 11.05.20 16:39, John Kramer wrote:
You could also use a JsonItemWriter and write your own servlet if
you want to do it that way:

https://sling.apache.org/apidocs/sling8/org/apache/sling/commons/json/jcr/JsonItemWriter.html


John Kramer
Manager, AEM Engineer
E-Commerce Web Team
e: [email protected] <mailto:[email protected]>
m: 314-435-2370

On 5/11/20, 08:54, "Daniel Klco" <[email protected]> wrote:

      Warning:  This email originated from outside of Panera. Beware
of clicking links and attachments.
Sounds like a use case for Sling Models Exporter: https://sling.apache.org/documentation/bundles/models.html#exporter-framework-since-130-1 https://blogs.perficient.com/2018/07/26/no-servlets-required-exporting-data-with-sling-models/ The only caveat is that it's designed for named parameters, if
you really
      need it to be completely configurable at runtime, I'd suggest
creating a
      servlet attached to a resource type that filters the current
resources
      value map and uses Jackson to convert it to a JSON.
On Mon, May 11, 2020 at 4:31 AM JCR <[email protected]> wrote: > Before I write anything on my own...
      >
      > Hello
      >
      > There is this convenient .json extension which produces a
JSON
      > serialization of any given resource in Sling.
      >
      > What would be a "best practice" if I only wanted a subset of
all
      > properties to be serialized on the json stream? That is, I
would like to
      > provide a "positive" list (lists all props to be exported)
or a
      > "negative" one (props to be excluded).
      >
      > Example: I have props a, b and c on a given node/resource
and only a and
      > c should appear on the output.
      >
      > Thanks for any pattern hint
      > Juerg
      >
      >
[1]: 
https://github.com/apache/sling-org-apache-sling-servlets-get/blob/master/src/main/java/org/apache/sling/servlets/get/impl/helpers/JsonRenderer.java


Reply via email to