I would like to ask for some opinion/advice on classes that should be moved out of kres.jersey :

* Writers: there are some in commons.base that we had as ducplicates and will gladly drop in favor of common ones. There are a few more in kres.jersey, though: ** JenaModelWriter : serializes a Jena Model into {"application/rdf+xml", "application/xml", "text/xml"} ** JSONJenaWriter, perhaps we could use JsonLdSerializerProvider from commons.web.home instead?

* JerseyEndpoint : we register Clerezza TcManager and Serializer with the servlet context. Perhaps this could be done in the commons.web jersey endpoint?

* KRFormat: we have this class with MIME constants for formats such as RDF/XML, OWL/XML, manchester OWL, Turtle, RDF/JSON, OWL functional syntax etc. We use it extensively in former Kres webservices, would it make sense to move to commons.web?

Thanks

Alessandro


On 4/4/11 3:28 PM, Olivier Grisel wrote:
Hi all,

I have finally managed to merge the HTTP endpoint refactoring branch to trunk.

I plan to write a hands on developer guide on the stanbol site to help
other developers use this modular JAX-RS services + webapp but won't
have time before the IKS review meeting this week. In the mean time
here is a quick overview of the system:

https://svn.apache.org/repos/asf/incubator/stanbol/trunk/commons/web/README.txt

As I know people are lazy and won't click on my link, here is a copy
and paste of the content of this file:

Stanbol HTTP Endpoints
======================

The following bundles provide the base infrastructure for building a
consistent set JAX-RS based HTTP endpoints (RESTful webservices) to
publish services implemented by the various OSGi bundles of a Stanbol
distribution.

The general convention is to make each endpoint self-documented by
implementing a @GET annotated method that "Accept: text/html" and return
an HTML page that explains how the endpoint works and give usage examples
with the `curl` commandline tool and HTML forms to quickly test the
service from inside the browser.

- `stanbol/commons/web/base` provides the java interface and OSGi /
JAX-RS context
   bridging tooling but not actual JAX-RS resources

- `stanbol/commons/web/home` provides a simple resource for the home page and
   default CSS / icons and base freemarker template to be reused by other 
Stanbol
   JAX-RS resources for consistent look and feel accross the all documentation.

- `stanbol/commons/web/sparql` provides a sample JAX-RS resource to publish
   access to the registered clerezza triple stores using the standardized SPARQL
   HTTP endpoint API.

TODO: write the documentation to contribute new endpoints that reuse the styling
and menu navigation of the default components.



Reply via email to