Java and Content Management

31
Java and Content Management Mickaël Tricot Mathijs Brand

description

Introduction to the Open Source Hippo CMS at the Boston Java Meetup

Transcript of Java and Content Management

Page 1: Java and Content Management

Java and Content Management

Mickaël Tricot Mathijs Brand

Page 2: Java and Content Management

#BostonJava

@mickaeltr @mathijsbrand

@OneHippo

Page 3: Java and Content Management

Content Management

Page 4: Java and Content Management

It's about Content

Page 5: Java and Content Management

Content is King

Page 6: Java and Content Management

Content is

Page 7: Java and Content Management

Relevant Trustworthy Accessible Interactive

Page 8: Java and Content Management
Page 9: Java and Content Management
Page 10: Java and Content Management
Page 11: Java and Content Management

Photos Whiteafrican Flickr

Page 12: Java and Content Management

Photos Whiteafrican Flickr

Page 13: Java and Content Management

Sysadmins

Page 14: Java and Content Management

Content Management

Page 15: Java and Content Management

Content Repository

+ Events, Search, Versions, Unstructured

Query Integrity Structure

Transactions

File-System RDBMS

Locking Binaries

Hierarchy Permissions

Page 16: Java and Content Management

Standard technology

Java Content Repository

JCR v1.0 = JSR-170 (2005) JCR v2.0 = JSR-283 (2009) JCR v2.1 = JSR-333 (work in progress)

Page 17: Java and Content Management

Standard technology

Reference implementation

Page 18: Java and Content Management

JCR domain model

Page 19: Java and Content Management

JCR API

Page 20: Java and Content Management

JCR adoption

Page 21: Java and Content Management

Demo

Page 22: Java and Content Management

Hippo CMS

Hippo Repository

Hippo CMS Hippo Site Toolkit

Open source (Apache license)

Page 23: Java and Content Management

Hippo CMS

Web application Runtime modifiable configuration in repository

Extensible via plugins

Page 24: Java and Content Management

Hippo Repository

Page 25: Java and Content Management

Hippo Site Toolkit

Framework for publishing content

Page 26: Java and Content Management

HST JCR support

JCR session pooling

JCR to Java mapping

JCR search API

Page 27: Java and Content Management

HST content publishing

Web pages with JSP / Velocity / Freemarker Parameterized components rendering Tag library (EL)

REST API with JAXB and JAX-RS

Page 28: Java and Content Management

HST request handling

Runtime-modifiable configuration Request matching (with wildcards) to identify •  Content to serve •  URL + Channel configuration

Request processing with pluggable valves

Page 29: Java and Content Management

Deployment model

Page 30: Java and Content Management

Roadmap

Page 31: Java and Content Management

Let's play!

Download and build project at github.com/mickaeltr/Boston-Java-Meetup mvn install mvn -P cargo.run -D repo.path=/tmp/repo

For JRebel users

mvn [...] -D jrebel