Sun Java System Portal Server 7.1 Community Sample Guide

Overview of the Community Template

This section contains the following:

What Is A Community Template?

A community template is comprised of a set of services (channels) and the visual layout. However, the layout is not always dictated by the community template as in the case with wiki community template where the layout is dictated by the wiki itself. Community templates define (in the role display profile document) the type of services available for the community, the default settings for each service, and the containers that bind the services.

Physically, a community template is a properties file, and image, plus one or more display profile documents. There may be up to three display profile documents, one per community role (such as OWNER, VISITOR or MEMBER). Each role template defines services and the layout associated with the particular role. The content of the role template is represented in a display profile document. In essence, a community template contains the logic for handling different roles (one display profile document per role) and depending on the role, you get a different set of services and a different layout.

Communities are created from a community template. The system may have any number of community templates. In the Community Sample, end users choose a community template when they create a community.

What Are the Available Templates?

The Portal Server software includes:

Two Column

A two column table layout with thin channels on the left and wide channels on the right.

Left Navigation

A menu navigated content layout with menu on the left and selected content on the right.

Wiki

A WYSIWYG layout to allow users to create wiki-like content and page layout including support for wiki plugins, attachments, editing, syntax, and the such

Custom templates can be added to the system. See Creating and Modifying a Template for more information.

How Are The Templates Stored?

The community templates are stored on filesystem. Community templates are stored in PortalServer-DataDir/portals/portal-ID/communitytemplates directory (referred to as communityTemplateBaseDir). Note that this means that each Portal (in a multi-portal deployment environment) will/must have its own set of community templates. The resource bundle in communityTemplateBaseDir defines the meta-data associated with each template. In addition, each template has its own directory where the role templates are stored.


Example 7–1 Sample communityTemplateBaseDir

communityTemplateBaseDir     -+-- template1 -+-- owner.xml
                            |              |
                            |              +-- member.xml
                            |              |
                            |              +-- visitor.xml
                            |
                           -+-- template2 -+-- owner.xml
                            |              |
                            |              +-- member.xml
                            |              |
                            |              +-- visitor.xml
                            |
                           -+-- template3 -+-- owner.xml
                            |              |
                            |              +-- member.xml
                            |              |
                            |              +-- visitor.xml
                            |
                            +-- template1.properties
                            |
                            +-- template1_en.properties
                            |
                            +-- template1_fr.properties
                            |
                            +-- template2.properties
                            |
                            +-- template3.properties
                            |
                            +-- template3_en_US.properties
                            |
                            +--       ...
                           

How Are The Templates Managed?

The portal administrator can add a new community template, update an existing community template, archive and restore community templates on the system, and export community templates from one portal instance to others and/or keep them in sync.