I'm evaluating some NoSQL solutions for a project of mine and JCR popped up during my searches as a document store. But it seems somehow of an obscure niche which didn't have the impact its designers hoped for.

I'm interested in the technology, but so far there does not seem to be a lot of resources out there to show it's potential (there is some info on the Jackrabbit site, but otherwise, pretty much scarce info).

Hopefully someone in the SE community could share from their experience with this technology.

What are its advantages/disadvantages? In what situations does this technology perform best?


I studied a bit about JCR eons ago. It's a nifty Java API to model a document repository, with a hierarchy, metadata, versioning, etc., that is, a nice model for CMS backend. There are quite a few implementations, notably the open source JCR, but some "enterprise CMS companies" had their own products based on JCR. Jackrabbit for instance uses an underlying SQL database.

Unfortunately, the JCR ecosystem doesn't seem to be very lively. So probably the work it would save you would probably be offset by the difficulty of hiring people who know it, the maturity of the libraries, etc. Some promising stuff exists, such as Sling, which is a nice web framework on top of JCR which might be a good foundation to build CMS-ey sites.

I would take a look at JCR; if the things it implements are stuff you need, it might be worth adopting it if you find a decent opensource implementation (Jackrabbit).


It looks like JCR is just a generic interface/API that a third-party could implement (similar to JMS). What you'd need to do is search for third party JCR support which it appears, your link on Wikipedia gives a few examples.

If you are creating an application that a customer would install on premise and needs to integrate with multiple document stores, JCR might be the path for you. However, if you're managing the stack from top to bottom, I'd say pick a store directly and use it directly for the time being.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.