Create new RichFaces Documentation Jira issue

This will launch the RichFaces Jira page - to complete your feedback please login if needed, and submit the Jira.

JBoss.orgCommunity Documentation

6.10.6.  <rich:panelMenu> available since 3.1.0

expand all
6.10.6.1. Description
6.10.6.2. Key Features
6.10.6.3. Details of Usage
6.10.6.4. Reference Data
6.10.6.5. Relevant Resources Links

The <rich:panelMenu> component defines vertical menu on a page. Used together with <rich:panelMenuItem> and <rich:panelMenuGroup>, which form <rich:panelMenu> content.


Use "event" attribute to define an event for appearance of collapsing/expanding sublevels. Default value is onclick:


<rich:panelMenu event="onmouseover">
      ...
</rich:panelMenu>

Switching mode could be chosen with the "mode" attribute for all panelMenu items except ones where this attribute was redefined. By default all items send traditional request. The "expandMode" attribute defines the submission modes for all collapsing/expanding panelMenu groups except ones where this attribute was redefined. The "mode" and "expandMode" attributes could be used with three possible parameters. The "mode" attribute defines parameters for all included <rich:panelMenuItem> elements.


...
<rich:panelMenu mode="server">
        <rich:panelMenuGroup label="test Group" action="#{bean.action}"> 
                <rich:panelMenuItem label="test" action="#{capitalsBean.action}"> 
                    <f:param value="test value" name="test"/> 
                </rich:panelMenuItem> 
        </rich:panelMenuGroup>
</rich:panelMenu>
...

...
<rich:panelMenu mode="ajax">
        <rich:panelMenuGroup label="test Group" action="#{bean.action}"> 
                <rich:panelMenuItem label="test" reRender="test" action="#{capitalsBean.action}"> 
                        <f:param value="test value" name="test"/> 
                </rich:panelMenuItem> 
        </rich:panelMenuGroup>
</rich:panelMenu>
...

...
<rich:panelMenu event="onclick" submitMode="none">
        <rich:panelMenuItem label="Link to external page">
                <h:outputLink ... >
        <rich:panelMenuItem>
</rich:panelMenu>
...

The "expandSingle" attribute is defined for expanding more than one submenu on the same level. The default value is "false" . If it's true the previously opened group on the top level closes before opening another one. See the picture below.


The "selectedChild" attribute is used for defining the name of the selected group or item. An example for group is placed below:

Here is an example:


...
<rich:panelMenu selectedChild="thisChild">
        <rich:panelMenuGroup label="Group1" name="thisChild">
                <!--Nested panelMenu components-->
        </rich:panelMenuGroup>
</rich:panelMenu>
...

The "label" attribute is a generic attribute. The "label" attribute provides an association between a component, and the message that the component (indirectly) produced. This attribute defines the parameters of localized error and informational messages that occur as a result of conversion, validation, or other application actions during the request processing lifecycle. With the help of this attribute you can replace the last parameter substitution token shown in the messages. For example, {1} for "DoubleRangeValidator.MAXIMUM", {2} for "ShortConverter.SHORT".

Table of <rich:panelMenu> attributes.





You can find all necessary information about style classes redefinition in Definition of Custom Style Classes section.

Visit panelMenu page at RichFaces LiveDemo for examples of component usage and their sources.

If you have any questions or ideas regarding the <rich:panelMenu> tell about them at the RichFaces Users Forum.