Dispatch Mechanism

Showing results for 
Search instead for 
Did you mean: 

Dispatch Mechanism

0 0 1,320

Obsolete Pages{{Obsolete}}

The official documentation is at: http://docs.alfresco.com

Back to Developer Guide


The 1.2 release introduced a dispatching mechanism. The dispatching feature allows actions to be overridden based on the type of the node being acted upon.


When an action is executed in JSF a navigation handler is used to determine which page to go to next. The id of the current view and the outcome is sent to the navigation handler.

Alfresco uses a custom navigation handler to handle the JSF navigation process. The client also adds the node being acted upon to a dispatch context, this occurs whenever the user clicks on a space or document.

The navigation handler inspects the dispatch context and the parameters passed to it. If a node exists in the dispatch context a config lookup is performed using the node. The navigation element is retrieved and if found a best match override is returned. If an override is found, the navigation handler will navigate directly to the configured view-id or pass the configured outcome to the default navigation  handler.


The configuration options are shown below.

   <override [from-view-id | from-outcome] [to-view-id | to-outcome] />

from-view-id - The view id (path) of the page the action was executed on

from-outcome - The outcome being processed i.e. showSpaceDetails

to-view-id   - The view id (path) of the page to navigate to

to-outcome   - The new outcome to send to the original navigation handler prompting a search of the standard JSF navigation rules.


A typical use case for the dispatch mechanism is when you want to use a slightly different page for an action based on the type. For example, the view space details page is slightly different for the fm:forums, fm:forum or fm:topic spaces (there are less options). This is configured as follows:

<config evaluator='node-type' condition='fm:forums'>
      <override from-outcome='showSpaceDetails' to-view-id='/jsp/forums/forums-details.jsp' />