jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Klimetschek" <aklim...@day.com>
Subject Re: idea behind workspaces
Date Wed, 11 Jun 2008 14:52:37 GMT
On Wed, Jun 11, 2008 at 4:21 PM, tu154 <m-i-s-c-h-k-a@web.de> wrote:
> What is the idea behind workspaces? For what can I need more than one
> workspace? Could someone give me simple examples?

Multiple workspaces are good for many use-cases. The first is to
simply separate your content at a high level, eg. if you implement a
CMS that is used for multiple sites (foobar.com, superfoobar.com,
etc.), you could have a workspace for each site. The inner content
structure would always be the same. Whether you do this with multiple
workspaces or with a top-level folder inside a workspace is a question
of the proper tradeoff for the specific application.

Secondly, each workspace in Jackrabbit can have a different
persistence manager, ie. the place where things get stored (eg.
filesystem, database). This might be interesting during development,
eg. using the filesystem one for better debugging on what gets stored.

Finally the JCR API allows for cloning workspaces, where the UUIDs of
nodes are kept. This allows for merging content later one. And both
workspaces will point back to the same version history. Have a look at
the JCR specification (which you should read anyway, since it is the
number one documentation for JCR ;-)).

> One thing I found is, that you can use multiple workspaces, if you have more
> than one user who can login to the repository, but they have their own
> workspaces and so their own content. My next question is, how do I configure
> this? By login to the repositry I will get a new session, how and where can
> I set that the user can only access his own workspace??

With JCR 1.0 and current Jackrabbit, you have to implement your own
LoginModule and AccessManager to have restrictions on workspaces and
nodes. With the upcoming JCR 2.0 (JSR283) there will be built-in ACLs,
but this is currently work in progress. See the dev mailing list for
recent discussions on this topic.


Alexander Klimetschek

View raw message