Apache Jackrabbit
Java content repository
What it does
Jackrabbit implements the Java Content Repository specification, providing hierarchical content storage, queries, and versioning features for applications that organize structured documents and their associated metadata in a repository-based model.
When to use it
When an application manages a content tree, use JCR APIs and repository guides to plan nodes, properties, and the operations required to retrieve content.