Welcome to the Apache Jackrabbit Wiki
Apache Jackrabbit is a project at the Apache Software Foundation.
We are in need of better documentation, so feel free to add to these pages as you learn more about Jackrabbit. Write access is disabled by default to prevent spam, but you can get around that by sending your wiki username to dev@jackrabbit.apache.org and asking for more access. Someone from the AdminGroup will add you to the ContributorsGroup to grant you write access.
Features
ConfigurationOverview: How to configure Jackrabbit
PersistenceManagerFAQ: Persistence Manager configuration
DataStore: How to configure and use the binary data store
NodeTypeRegistry: Registry of commonly used node types
NamespaceRegistry: Registry of commonly used namespace mappings
Clustering: How to set up and use clustering
Observation: Jackrabbit-specific observation
Search: How to set up and use search
CacheManager: Cache configuration
RepositoryLock: Repository locking
BackupAndMigration: How to backup a repository or migrate to another configuration
ContribTips: Help regarding the contrib projects
JcrSpecImplementation: List of additional features and implementation variants in Jackrabbit compared to the JCR specification
JcrCommons: Jackrabbit JCR Commons
ConnectionPooling: Connection pooling for database components
RemoteAccess: Remote access to a Jackrabbit repository over DavEx or RMI
UserManagement: User and group management with Jackrabbit
AccessControl: Access control with JCR 2.0 and Jackrabbit
InteractiveCommandLine: Execute a command line tool in an interactive mode to change a JCR repository
Statistics: an overview of the statistics exposed by Jackrabbit
Links
Mailing Lists: Post questions in the mailing list
JCR 2.0 (JSR-283) Specification Javadocs Diff to JCR 1.0 (public final draft)
JcrLinks: Links to articles, presentation, videos, tools and applications based on JCR or Jackrabbit
Sling: Web application framework based on REST principles. Sling uses a JCR repository
Apache Wiki Farm: Other Apache wikis
Dev Mailing List Archive: Search for answers in the mailing list archive
Mailing Lists: Post questions in the mailing list
Community
ContentTrackApacheConUs2009: Proposed "Content Technology" track at the ApacheCon US 2009
Oakathon August 2017: Oak Hackathon
Oakathon November 2017: Oak Hackathon
Oakathon March 2018: Oak Hackathon
Oakathon August 2018: Oak Hackathon
Architecture
ItemStateManagement: Design of ItemState management with collaboration diagrams for various use cases that read and/or modify content
FAQ
QuestionsAndAnswers: Frequently asked questions about Jackrabbit
ExamplesPage: Solutions for common problems
Performance: Q. and A. about Jackrabbit perfomance
JcrSessionHandling: How to (re)use JCR sessions
EncodingAndEscaping: How to handle special characters in path and queries
QueryUsingJdbc: How to query a JCR repository using the JDBC API.
UsingJNDIDataSource: How to use a JNDI DataSource to connect to a database.
ManuallyCreatingDatabaseTables: How to create tables manually when using database persistence.
Blueprints and best practices
DavidsModel: A guide for blissful content modeling. Seven rules to avoid common mistakes content modeling mistakes.
NodeNamingConventions : Recommendations for node names.
Future Plans
RoadMap: High level roadmap for Jackrabbit
Proposed_JCR_2.0_API_Changes: Changes between the JCR 1.0 API and the proposed JCR 2.0 API as defined in JSR 283.
Jsop: Links and proposed syntax for a Json Diff format
Jackrabbit 3: Project Oak (mainly of historical interest. Please refer to the Oak documentation for up to date information).
Deployment
JackrabbitOnJBoss: How to deploy a Jackrabbit server with JCA, expose the local repository through JNDI and WebDAV to remote clients and connect remotely from a Java program, or from a command line tool (contrib/jcr-commands).
JackrabbitOnWeblogic: How to deploy the Jackrabbit server on Weblogic, expose the repository over WebDAV, use JNDI with Oracle.
JackrabbitOnTomcat: How to use the Jackrabbit with Tomcat, WebDAV, JNDI and Oracle.
JackrabbitOnTomcat6: How to use the Jackrabbit with Tomcat6 & Mysql.
JackrabbitOnTomcat6withJndiAndPostgresql: How to use the Jackrabbit with Tomcat6 and JNDI, backed by PostgreSQL.
JackrabbitOnSunWebServer: How to configure the Sun Java System Web Server with Jackrabbit (Model 2).
JackrabbitOnOracle: How to configure Jackrabbit to use Oracle backend.
JackrabbitOnCloud: Running Jackrabbit using Amazon Web Services (AWS) and Google App Engine (GAE).
JackrabbitStandalone: Running Jackrabbit standalone.
WebDAV
WebDAV: If you plan on using Jackrabbit through WebDAV. Useful for existing Jakarta Slide users or other WebDAV repository users thinking about migrating to Jackrabbit.
Miscellaneous
SandboxCMIS: More on the CMIS Sandbox project
WebAppFAQ: Frequently asked questions related to web application development
OCMandJackrabbit2: Object Content mapping with Jackrabbit 2.0
JackrabbitOsgi: Embedding the Repository in an OSGi Framework
Jackrabbit FileVault: Jackrabbit FileVault
Reports
https://whimsy.apache.org/board/minutes/Jackrabbit.html - Jackrabbit board reports.
Historical
JcrMeetupMarch2009: JCR community gathering at 20:00 on March 24th at the ApacheCon EU in Amsterdam
JcrMeetupApril2008: JCR community gathering in Amsterdam on April 8th, 2008
BackupTool: Design document of the 2006 Google Summer of Code project (written by Nicolas Toper, mentored by Jukka Zitting).
JNDI: Patching the Oracle file system and persistence manager for use with JNDI (no longer required with Jackrabbit 1.4)
Special Wiki Pages
TitleIndex: A list of all pages on this wiki.
HelpContents: A basic guide to the MoinMoin wiki (including information about wiki syntax).
WordIndex: A list of all the words that appear in the titles of the pages on this wiki, with links to pages that include that word.
FindPage: A full-text search of the wiki.
WantedPages: All the "broken links" -- a list of all the pages on this wiki that are linked to, but do not exist.
OrphanedPages: All pages on this wiki that are not linked to from anywhere else (and are thus very hard to reach).
RandomPage: Generates a list of 75 random pages on this wiki.
PageSize: Generates a graph and some statistics about the sizes of pages on this wiki.
EventStats/HitCounts: Generates a graph of page views and page visits.
EventStats/UserAgents: Generates a graph of the web browsers used in visiting this page.
SystemInformation: Shows basic information about this wiki installation, the extensions it has installed, etc.