One of the best resources to start are Alfresco community manager Jeff Pott's tutorials. These well written tutorials cover the most important extension points of the Alfresco document repository. After reading them you will know the basics to start a successful Alfresco project.
Most of these tutorials were updated recently to cover the latest Alfresco versions.
Step 1: Defining the content model
The first step in every Alfresco project is defining a content model. The content model is a list of content types and their corresponding metadata fields.
Working with Custom Content Types teaches you to create a content model, expose the model in the Share UI, performing searches and doing CRUD operations against your custom content types.
Step 2: Extending the Repository: Behaviours and Actions
Next up are actions and behaviors. These make your content model come alive.
Actions let you encapsulate an operation on the repository so it can be executed from a rule, from custom Java or Javascript code or remotely using the web services API.
Behaviors are a way to couple behavior to your custom content types, if you want to trigger some code on creation or update of a document this is the way to go. You could say behaviors are an advanced version of rules.
Step 3: Web Scripts
Web Scripts allow you to extend Alfresco with your own RESTful API. Common use cases are creating a simple form, administration tool or custom view or to integrate with other applications. They are also used extensively inside to Alfresco Share UI.Intro to the Web Script Framework
Step 4: Workflow
Content is almost always created or used in the context of a business process. In this tutorial Jeff explains how to implement content-based business processes by leveraging the Alfresco Activiti workflow engine.
Activiti was created by the jBPM developers and supports the BPMN 2.0 standard.
Step 5: Integrating with Alfresco: the CMIS Web Services
The last step in this series is CMIS. CMIS is a standard for accessing Enterprise Content Management systems like Alfresco. It is the recommended way to access content that's stored inside Alfresco form external applications.
There are two implementations: the SOAP web services and the AtomPub RESTful API. Alfresco supports both.
The book
Because of the success of these tutorials they were reworked and published in the excellent book titled the Alfresco Developer Guide. If you want to learn more or just prefer a paper version over online tutorials this book is highly recommended!
Buy the book on Amazon (support this site by using the link below):
Alfresco Developer Guide
What's next?
The Alfresco Developer Series focuses on the Alfresco repository. Most projects require more extensive customization and extension of the Alfresco Share UI which is not really dealt with in these tutorials. I will cover this in a later article.
Subscribe to this blog so you don't miss the next post.