Obsolete Pages{{Obsolete}}
The official documentation is at: http://docs.alfresco.com
FreemarkerTemplate Engine
FreeMarker
FreeMarker provides simple data binding support, but it's still flexible. Templates are bound to data via a tree data model.
The data model is built using Java as demonstrated here. The demo simply constructs the tree using a combination of values and hash tables. However, the data model itself is represented as a series of Java Interfaces, thus allowing any data backend. In the demo, the values and hash tables are automatically adapted to support the Java Interfaces. The interfaces are detailed here.
Basically, almost any data source can be bound, such as SQL ResultSet. Popular POJO binding is provided out-of-the-box. But, advanced examples such as the XML Node binding as described here are also possible.
An interesting concept is the notion of a method. This provides dynamic capability, and could possibly be used to extend the tree data model template rendering time.
There's support for using FreeMarker in the web-tier as described here. It's possible to use JSP tags in FreeMarker templates, and use FreeMarker templates in JSP, although how well this actually works has to be tested.
Options...