JSR 170 - Java API for Content Repository
By manishkg on Feb 13, 2007
What is a Content Repository - A content repository is a hierarchical content store with support for structured and unstructured content, full text search, versioning, transactions, observation, and more. It is a generic application
"data store" that can be used for storing both text and binary data
(images, word processor documents, PDFs, etc.). It can be think of 2 parts - (a) any data store such as RDBMS, XML document or file system and (b) an application to interact with datastore. Information storage and retrieval are 2 most common services provided by any CMS. In addition, they mostly provide advance services like searching, versioning, permissions, locking, hierarchical organization of items and more. Some of the popular CMS vendor are Documentum, Vignette, or FileNet.
Most visible use of CMS is in the organization's portal to provide information to it's empoyee / customer.
JSR 170 - In simple terms, JSR 170 is same for CMS what JDBC is for any RDBMS. Earliar, portal application have to use proprietary API provided by CMS implemenatation and their was vendor locking. JSR-170 tries to solve this problem by standardizing the API that should be used for connecting to any content repository
Package name for JCR api is javax.jcr
One popular implementation of JSR170 is Apache Jackrabbit, the reference implementation.
What is next -
JEE 6 : JSR170 may be included in the next version of Java Enterprise Edition.
JSR 283: Content Repository API 2.0
is in progress and will be released in May 2007.
Some references -