As before, Alfresco DevCon 2011 was a great experience. Events were held in both San Diego and London, and I was able to see different presentations at each event. Unfortunately for me, only about half of the presentations were the same between the two events. That means that even after attending both events I still missed a lot of sessions I was excited to see.
This post is to document some of the best tips that I picked up at DevCon (well, at least the best easy-to-blog-about tips). I apologize that I neglected to keep track of which session provided each tip.
There were lots of good presentations, so I recommend you spend some time browsing the slides which are posted at Slideshare:
Rendition vs Transformation
The discussion around a question yielded this clear explanation about when to use the Rendition Service and when to use the Transformation Service:
The Rendition service is the main API for customization use. It allows the manipulation of external metadata in Alfresco, and preserves a relationship between the source content and the transformed content which can be used to trigger updates. The Content Transformation Service is for generating transformed content without an association, and can only manipulate the direct content. It is necessary to understand the transformation service when adding new transformations.
Supported Content Formats
In version 4.0 Alfresco lists all of the mimetypes registered with the system and specifies what transformations are supported. Just browse to this URL:
Alfresco API Documentation
There are also JavaDocs available for the Java API here:
Packaging Best Practices
Jeff and Will gave an excellent summary of best practices around packaging extensions to Alfresco. Check out slides 24 and 25 of their presentation:
I liked it so much, I used it to update this wiki page.
The first half of the presentation by Gary Cox of Blue Fish Development Group also gave excellent advice on this topic.