Proposal for new project JCMS

Accepted by the Portals PMC on September 27, 2004.

Rationale

JCMS offers a complete platform for creating, managing, and publishing content in your portal. JCMS integrates content repositories, workflow, collaboration and personalization via existing open source projects and powerful standards like WEBDAV, JCR [JcrProposal], ... . It includes features like taxonomy, content versioning, fine grained access control, collaborative editing, publication workflow, scheduling, indexing, searching and more. It will support many document types like XML, HTML, PDF, MS Office, Open office, ect. JCMS is specifically focussed on content services for portals but can also be used for a web based content management system or a document management application.

The JCMS engine groups together different content stores into the same virtual content tree. In this way, the portal application can access to heterogenous content servers based on different technologies (WEBDAV, JCR [JcrProposal] or proprietary content stores). The JCMS content model is a high level object model giving an abstraction on the underlying technology used by the content store. The core object model is composed of "Document", "Folder","Link", A specific application can inherit this model and extend it to fit any specific purpose.

JCMS is also proposed as the default CMS service for Jetspeed 2 http://portals.apache.org/jetspeed-2/. In order to have a complete portal integration, the JCMS project will offer a series of JSR-168 http://www.jcp.org/en/jsr/detail?id=168 portlets like content browser, editors and content administration portlets.

Criteria

Meritocracy

The community around JCMS is not yet fully defined so no formal community rules are formally enforced, however given the committers ties and experience with current Apache projects, all common Apache community rules and guidelines are ccurrently used de facto and will be applied within the JCMS community.

Community

There is not yet a JCMS community but there is a huge amount of demands on the Jetspeed mailing for this kind of tools. So, we can expect that the JCMS community will be mainly the current Jetspeed community. Due to the fact that JCMS will support Webdav, a lot of Slide users will be also interested by JCMS.

Core Developers

Currently, there are 2 developpers, one of them having a large experience at Apache.

Alignment

The initial code base is targeted to run within Jetspeed, but the goal is to allow the framework to run on any JSR-168 compliant portal solution and any kind of java application like web services, .... The services can be running on any Spring or PicoContainer applications and the JCMS portlets will be JSR-168 compatible.

Warning Signs

Orphaned products

The framework being proposed is an evolution of 2 different works made by Christophe Lombart and David Sean Taylor. Last year, David build a CMS solution for the BBC and Which Online in the UK and at the same time, Christophe build a document management application for the European Commission.

After some discussions, they realised the interest to build a common version of their work and publish it to the open source community.

Inexperience with open source

Both developers have experience working with open source projects. David Sean Taylor has experience as committer on other Apache projects and PMC member of Apache Portals.

Homogenous developers

The current list of committers includes developers from different companies. The committers are geographically distributed across the U.S. and Europe. They are experienced with working in a distributed environment.

Reliance on salaried developers

Christophe Lombart working for Sword Technologies plan to use JCMS in the last year quarter. David Sean Taylor is self-employed, with no current contracts using JCMS. However he plans to integrate JCMS into J2 to build out of the box CMS solutions at Jetspeed.

No ties to other Apache products

As described in the Alignment section, this framework already has ties to many Apache products. The framework is also already license-compatible with Apache products; in fact, it is currently licensed under the Apache License 2.0.

A fascination with the Apache brand

The committers are intent on developing a strong open source community around the JCMS framework; Given its close relationship with Jetspeed-2 and Pluto and reliance on Slide, we believe that hosting this community within Apache Portals TLP will provide the best synergies.

Scope of the subprojects

The JCMS project can be split into 3 subprojects :

  1. The JCMS services : all JCMS services are simple POJO components

which can be running into different containers.

The core JCMS services are :

  • The Model Service.
  • The Version Service.
  • The Security Service.
  • The Search Service.
  • The Index Service.
  • The Workflow Service.
  • The Event handler Service.

The persistence service (this is the key component which will map the JCMS object model into the underlying model used to access a specific content store).

2. The JCMS engines : The target of this subproject is provided nice integration with existing container frameworks like Spring, PicoContainer, EJB, ...

3. The JCMS portlets : This target will provide a set of JSR-168 compatible portlets grouped into different portlet categories : content browser, content viewer, editor & content administration.

Identify the initial source from which the subproject is to be populated

The initial source will be donated by Christophe and David. A snapshot can be found here:

http://www.bluesunrise.com/jetspeed-2/jcms2.zip

Identify the ASF resources to be created

mailing list(s)

  • jcms-ppmc via incubator.apache.org (with moderated subscriptions)
  • jcms-dev via incubator.apache.org
  • jcms-user via incubator.apache.org

Subversion repositories

  • incubator/jcms

Jira

  • JCMS project with categories for Core, Engines, Portlets, Docs

Identify the initial set of committers

Raphaël Luta

Aptiwan

ASF, Portals

David S. Taylor

Bluesunrise

Portals

Christophe Lombart

Sword Technologies

 

Identify Apache sponsoring individual

  • No labels