WCM Developer Documentation

Showing results for 
Search instead for 
Did you mean: 

WCM Developer Documentation

0 0 2,538

Obsolete Pages{{Obsolete}}

The official documentation is at: http://docs.alfresco.com

This section provides links to WCM developer guide topics.

Developer Overview

Alfresco WCM is an application for managing web content.   The assets being managed by Alfresco are not tied to any specific framework or technology.

Content is managed in sandboxes that isolate each user's changes. There are facilities for submitting content to a shared (staging) sandbox and then deploying that content either to a flat filesystem or another instance of Alfresco.

Content can be collected and displayed via forms. Workflow can be used to control the approval and publishing of content.

As a developer, there are two main areas for WCM that you will need to become involved. The first is to design and implement the content model (Web Forms) that your web site or application will consume, and the second is to implement any customisations that are specific for your implementation. These may include custom workflows, scheduled jobs, or integrations with external sources of content.

WCM Components

Alfresco Web Content Management is closely tied with the underlying facilities provided by AVM. AVM is best thought of as a version control system, in fact, it shares many concepts with Subversion (SVN). But AVM is better thought of as a lower level core component of Alfresco. It is possible to use AVM directly for WCM, but that is typically harder and more obscure than using the higher level APIs provided for the WCM application.

Version 3.1 / Labs 3D introduces new Java / Web Script / JavaScript API

WCM Forms Developer Guide

WCM Forms are used to capture content from the user and store it as XML in Alfresco at a certain path. For capturing content, an XML Schema needs to be created by the developer. It is then rendered automatically using a user-friendly Web Form (using XForms technology embedded in Alfresco).

Detail on supported XML schema data types, XForms controls, and UI widgets. Also, detail on annotation for customizing appearance, labels, and alerts.

Content Lifecycle Management

Detail on Alfresco's support for Content Launch and Scheduling and Content Expiration.

Content Deployment

Once web content is in a sandbox it may need to be pushed out of Alfresco onto a test or production server. AVM efficiently maintains change sets between versions so only the minimum changes are deployed. Author sandboxes are pushed out to test servers. Staging sandboxes are pushed out to live servers.

WCM Preview

Detail on the in-context preview options available in Alfresco WCM.

Virtualization Server

The Virtualization server is a separate instance of Tomcat that provides virtual views of the contents of sandboxes without needing to deploy content. The Virtualization server's job is to allow data within certain sandboxes within the AVM repository to be interpreted as a set of virtual websites, and to allow these websites to be browsed by end users (and QA tools) prior to deployment (or submission to a 'common staging area'). These websites may include virtualized servlets and JSPs, but completely static websites can be virtualized too (.html, .gif, .png, etc).

The Virtualization server is specific to Java application server web sites. The alternative for non-Java web sites is to deploy to a Test server.

Adding Custom Scripting API to AVMService

Detail on how to expose AVM functionality via Javascript for those methods not natively exposed via Alfresco's Javascript API.


Please contribute tutorials, hints and tips and add links here.

More Developer Resources

Have a look at the WCM extensions on JavaScript API, Template Guide, Metadata Extraction, Web Scripts, and our partner RivetLogic's set of custom JSP for WCM.