On Sep 8, 2011 6:39 PM, "Luciano Resende" <[email protected]> wrote:
>
> On Fri, Sep 2, 2011 at 1:06 PM, Reto Bachmann-Gmür <[email protected]>
wrote:
> > On Fri, Sep 2, 2011 at 6:22 PM, Luciano Resende <[email protected]>
wrote:
> > ...
> >>> The second requirements might need a bit more explanation. In sling
> >>> servlets are typically bound to a type of JCR-resources even though
> >>> this goes beyond the jax-rs spec it would be nice to bind jax-rs style
> >>> classes to such a JCR-resource type, the patch I attached to
> >>> SLING-2192 allows this, see my blog post [2] for an example usage.
> >>> Similarly in Clerezza jax-rs style resource can be bound to an
> >>> RDF-Type [3].
> >>>
> >>
> >> As for your second example, maybe a simple way would be to have
> >> JCR-resource types defined as specific media types, in this way, you
> >> could envision having a single endpoint for CRUD operations in your
> >> JCR repository to work based on the media type being requested. WDYT ?
> >
> > Hi Luciano,
> >
> > I must admit that I don't know as much of jcr and sling as I know
> > about clerezza. Not sure if I understand you correctly, but the
> > jcr:type of resource (which can be an arbitrary string) seems
> > orthogonal to the media type: on one hand we have the selection of the
> > root-resource on the other the production of an appropriate
> > representation.
> >
> > Sling has a mechanism that has shown to work well that associates code
> > handling the request to a specific URI, without changing this
> > mechanism I'd like support for jax-rs root resource like classes
> > ("like" because the @Path-Annotation are missing or ignored) as an
> > alternative to servlets or scripts. I think Wink should not directly
> > support other ways to bind resource-classes to URI than @Path, but it
> > should provide an easy way for frameworks integrating wink (like sling
> > or clerezza) to support other mechanisms.
> >
> > To avoid osgi-dependencies in wink-server I suggest providing an
> > wink-osgi-service bundle that provides a service with the following
> > methods
> >
> > //handles a request using previously bound root resources
> > void handleRequest(HttpServletRequest request, HttpServletResponse
response)
> >
> > //that's the method that allows easy integration with Sling or Clerezza
> > void handleRequest(HttpServletRequest request, HttpServletResponse
> > response, Object rootResource)
> >
> > //bind root resource or provider, binding classes seems against OSGi
> > architecture
> > void bindComponent(Object component)
> >
> > void unbindComponent(Object component)
> >
> > //framework supporting other request processing mechanism can use this
> > method to check if Wink can handle a request (with the currently bound
> > root resources)
> > boolean hasRootResourceForUriPath(String uriPath)
> >
> > Do you think a new module providing such a bundle and service would
> > fit into Wink? If so I'll open an issue and attach a patch to it. It
> > can be implemented without modifying other code, even though in future
> > the existing RequestProcessor might be adapted for a more seamless
> > integration.
>
> Is this new module have any Sling or Clerezza dependencies ?
>
No.

Reto

Reply via email to