Layouts can be displayed thanks to a series a JSF tags that will query the web layout service to get the layout definition and build it for a given mode.
For instance, we can use the documentLayout tag to display the layouts of a document:
Since 5.4.2, it is possible to make a distinction between the layouts defined in a given mode on the document, and the mode used to render layouts, for instance:
We can also display a specific layout for a document, even if it is not specified in the document type definition:
You can include a layout in a dataTable tag, but cannot make its mode depend on the iteration variable. If you need to do so, recommendation is to use the c:forEach tag and handle all the <table>, <tr>, <td>... tags by yourself.
For instance, here is a sample display of a listing layout. The layout template is configured to display table rows. It will display header rows when the parameter "showListingHeader" is true.
Please refer to the tag library documentation available at http://community.nuxeo.com/api/nuxeo/release-5.6/tlddoc/nxl/tld-summary.html.