JCR In 10 Minutes

10,436 views

Published on

Slides of my short talk at http://www.nosqloakland.org/

Published in: Technology
1 Comment
8 Likes
Statistics
Notes
No Downloads
Views
Total views
10,436
On SlideShare
0
From Embeds
0
Number of Embeds
922
Actions
Shares
0
Downloads
286
Comments
1
Likes
8
Embeds 0
No embeds

No notes for slide

JCR In 10 Minutes

  1. 1. The Ultimate Content Store? JCR in 15 minutes Bertrand Delacrétaz Senior Developer, R&D, Day Software, www.day.com ASF member bdelacretaz@apache.org blog: http:/ /grep.codeconsult.ch twitter: @bdelacretaz Slides revision: 2009-11-01 Slides theme design: David Nuescheler Slides at http://x42.ch/01.10.01
  2. 2. JCR JCR = Java Content Repository API JSR-170 / JSR283 - Everything Is Content - and JCR manages it as trees of Nodes and Properties, using rich data types.
  3. 3. JCR JCR = Java Content Repository API JSR-170 / JSR283 - Everything Is Content - and JCR manages it as trees of Nodes and Properties, using rich data types. silve r
  4. 4. The JCR spec gpRJNTM `oåíÉåí=RÉéoëáíoêó=Ñoê= g~î~qj=íÉÅÜåoäoÖó=^mf péÉÅJiÉ~ÇW a~ó=poÑíï~êÉ pí~íìëW= cáå~ä=RÉäÉ~ëÉ=NTJàìåJOMMR bñéÉêí=dêoìéW
  5. 5. The JCR spec gpRJNTM gpRJOUP `oåíÉåí=RÉéoëáíoêó=Ñoê= g~î~qj=íÉÅÜåoäoÖó=^mf=îOKM péÉÅJiÉ~ÇW a~ó=poÑíï~êÉ pí~íìëW= cáå~ä=RÉäÉ~ëÉ=NQJëÉéíJOMMV bñéÉêí=dêoìéW
  6. 6. What’s JCR?
  7. 7. What’s JCR? “The API should be a standard, implementation independent, way to access content bi-directionally on a granular level to a content repository.”
  8. 8. What’s JCR? “The API should be a standard, implementation independent, way to access content bi-directionally on a granular level to a content repository.” ?
  9. 9. What’s JCR? “The API should be a standard, implementation independent, way to access content bi-directionally on a granular level to a content repository.” ?
  10. 10. Best of both worlds. data base f il es ys te m hier- integ archi rity structu re es read streams tx write access query locking control multi- value un-structured obser- versioning “full-text” sort vation order content repo sit or y
  11. 11. Best of both worlds. data base f il es ys te m hier- integ archi rity structu re es read streams tx write access query locking control multi- value un-structured obser- versioning “full-text” sort vation order content repo sit or y
  12. 12. Known compliant Repositories
  13. 13. Known compliant Repositories * using third party connector * * Exo Microsoft Apache Jackrabbit Oracle XML DB ECMS Platform Sharepoint OpenText Livelink * Day CRX IBM FileNet P8 Xythos Repository Alfresco ECM Vignette V7 * * any ors ow mvend ? H S ed Interwoven +hund DBMou ne R do y r s Repository IBM CM EMC Documentum regiede of TCKs st
  14. 14. Some known JCR Applications
  15. 15. Some known JCR Applications Fast BEA Portal Sun Oracle Portal Enterprise Search JBoss Portal Interface 21 OpenPortal Day Communique Spring Framework magnolia WCMS DAM Apache Sling Day Communique Alfresco ECMS Mindquarry Collab Collaboration Apache Tapestry QSLabs Apache Compliance Day Communiqué Cocoon WCMS IBM FileNet Artifactory medic-2-medic WebSiteManager Apache James Maven Proxy mapofmedicine Exo ECMS Platform TYPO3 GX WebManager v5.0 WCM InfoQ Hippo Liferay Nuxeo ECM Online Community CMS Enterprise Portal Jahia Sakai Percussion Framework E-learning Rhythmix QuickWCM Sourcemix WCMS Lutece Sourcemix
  16. 16. Some known JCR Applications Fast BEA Portal Sun Oracle Portal Enterprise Search JBoss Portal Interface 21 OpenPortal Day Communique Spring Framework magnolia WCMS DAM Apache Sling Day Communique Alfresco ECMS Mindquarry Collab Collaboration Apache Tapestry QSLabs Apache Compliance Day Communiqué Cocoon WCMS IBM FileNet Artifactory medic-2-medic WebSiteManager Apache James Maven Proxy mapofmedicine Exo ECMS Platform TYPO3 GX WebManager v5.0 WCM InfoQ Hippo Liferay Nuxeo ECM Online Community CMS Enterprise Portal Jahia Sakai Percussion Framework E-learning Rhythmix QuickWCM Sourcemix WCMS Lutece Sourcemix
  17. 17. JCR code excerpt Repository repository = new TransientRepository(); Session session = repository.login(...); / Create content / Node root = session.getRootNode(); Node hello = root.addNode("hello"); Node world = hello.addNode("world"); world.setProperty("message", "Hello, World!"); session.save(); / Retrieve content / Node node = root.getNode("hello/world"); print(node.getPath()); print(node.getProperty("message").getString());
  18. 18. Content models
  19. 19. JCR == NoSQL ? Not as “webscaly” as other NoSQL systems today. Growing in this direction. Offers a lot in terms of application infrastructure. Pragmatic solution for today, and not everybody needs webscale!
  20. 20. JCR == NoSQL ? Not as “webscaly” as other NoSQL systems today. Growing in this direction. Offers a lot in terms of application infrastructure. Pragmatic solution for today, and not everybody needs webscale! ache: itor y @ap repos it JCR ns layer krabb licatio Jac Sling app

×