jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting" <jukka.zitt...@gmail.com>
Subject Content driven web application
Date Sat, 29 Jul 2006 10:12:44 GMT

Here's an idea I've been playing with for a while. It's a design for a
generic web application that runs on top of a JCR repository.

The basic idea of the design is to avoid the static web.xml servlet
mapping that binds a URL pattern to some functionality, i.e. a servlet
class. Instead I'd like to bind a JCR content tree directly to the URL
space and use the type of a matching node to dispatch the request to
the appropriate functionality. A bit like what a web browser does with
the mime type of a retrieved resource.

A simple implementation of this idea would be a webapp that contains a
generic dispatching servlet and a set of default "handlers" for
standard node types like nt:file, nt:folder, and nt:base (as a default
fallback). The webapp would lookup the underlying JCR repository
through JNDI and would use the JCR classloader library to allow custom
node type handlers to be deployed simply by dropping class or jar
files into the repository.

You could for example build a wiki or a blog engine with such a
framework quite easily by defining the "wikipage" or "blogentry" node
types and implementing the respective custom handlers. As a bonus
you'd get instant attachment support from the default nt:file handler.
Making a wikilog would just be a matter of deploying the required
handlers within the same workspace. Similarly, you could add for
example image gallery functionality by dropping in a set of new node
types and handlers.

Would there be interest in developing this idea further?


Jukka Zitting

Yukatan - http://yukatan.fi/ - info@yukatan.fi
Software craftsmanship, JCR consulting, and Java development

View raw message