Skip to end of metadata
Go to start of metadata

There are three navigation types available to portal users:

These navigations are configured using the standard XML syntax in the portal.war:/WEB-INF/conf/portal/portal-configuration.xml file.

This XML configuration defines where in the portal's war to look for configuration, and which portals, groups, and user specific views to include in portal/group/user navigation. Those files will be used to create an initial navigation when the portal is launched for the first time. That information will then be stored in the JCR content repository, and can subsequently be modified and managed from the portal UI.

Each portal, groups and users navigation is indicated by the respective configuration paragraph, for example:

The meaning of elements used in the above listing is a follows:

predefinedOwner: Define the navigation owner. The portal will look for the configuration files in folder with this name. If there is no suitable folder, a default portal will be created with a name equal to this value.

ownerType: Define the type of portal navigation. The possible values are: portal, group or user.

templateLocation: Define the classpath where the portal configuration files are located.

importMode: Define the mode for navigation import. There are 4 possible values:

  • conserve: Import data when it does not exist, otherwise do nothing.
  • insert: Import data when it does not exist, otherwise perform a strategy that adds new data only.
  • merge: Import data when it does not exist, otherwise update data when it exists.
  • overwrite: Overwrite data whatsoever.

Based on these parameters, portal will look for the configuration files and create a relevant portal navigation, pages and data import strategy.

  • The portal configuration files are expected in folders whose paths correspond to the following placeholder path: {templateLocation}/{ownerType}/{predefinedOwner}.
  • Navigations are defined in the navigation.xml file.
  • Pages are defined in pages.xml file.
  • Portal configuration is defined in {ownerType}.xml file.
    For example, with the above configuration, the portal will look for all configuration files in war:/conf/portal/portal/classic directory.

Portal Navigation

The portal navigation incorporates the pages that can be accessed even when the user is not logged in (assuming the applicable permissions allow the public access). For example, several portal navigations are used when a company owns multiple trademarks, and sets up a website for each of them.

The classic portal is configured by three XML files in the portal.war:/WEB-INF/conf/portal/portal/classic directory: portal.xml, navigation.xml and pages.xml.


This file defines the layout and portlets that will be shown on all portal pages. The layout usually contains a banner, menu and breadcrumbs portlets followed by the page body and footer portlet. GateIn Portal3.7 is extremely configurable as every view element (even the banner and footer) is a portlet.

It is also possible to apply a nested container that can also contain portlets. Row, column or tab containers are then responsible for the layout of their child portlets.
Use the page-body tag to define where the portal should render the current page.
Note that the defined classic portal is accessible to Everyone but only members of /platform/administrators group can edit it.


This file defines the navigation nodes of the portal. The syntax is simple, based on nested node tags. Each node refers to a page defined in the pages.xml file.
If an administrator wants to create node labels for each language, he can use the xml:lang attribute with the desired locale identifier (e.g. de, fr or pt-BR) in the label element.
Otherwise, if the administrator prefers the localization of the node labels to be performed using resource bundle files, he can use the #{...} syntax. The enclosed property name is then interpreted as a key resolvable through the portal's internationalization mechanism and the locale is taken from the current HTTP request.

This navigation tree can be accessed from within portlets so that different representations can be achieved, such as breadcrumbs, sitemaps or popup menus. Please refer to the portal source tree to find an example for each kind.

The priority is optional property. It takes responsibility of navigation ordering (to display on UI). The greater priority value is, the higher navigation displays on toolbar. If it is not declared, it will by default value of -1. All navigations have priority less than 1, they display "undefined" when editing navigation on UI.


The structure of this configuration file is very similar to the one of portal.xml. It can also contain container elements. For each portlet application can be decided whether its border should be visible, its window state, the icons or the modes supported by the given portlet.

Group Navigation

Group navigations are dynamically added to the user navigation at login time. This allows users to access (e.g. via menus) all pages assigned to any groups they belong to.

The group navigation is configured by two XML files (navigation.xml and pages.xml). The syntax used in these files is the same as the one described in Portal Navigation.

They are also located in the {templateLocation}/{ownerType}/{predefinedOwner} directory where ownerType is group and predefinedOwner is the full group group name. For example, portal.war/WEB-INF/conf/portal/group/platform/administrators/.

User Navigation

User navigation is a set of nodes and pages that are owned by the user. They are part of the user's dashboard.

Two files configure the user navigation (navigation.xml and pages.xml). They are located in the {templateLocation}/{ownerType}/{predefinedOwner} directory where ownerType is user and predefinedOwner is name of the user for whom we want to create the navigation. For example, if the administrator wants to create navigation for the user named mary, he needs to put the configuration files into the directory portal.war/WEB-INF/conf/portal/user/mary.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.