Menubar brings the desktop application menubars to JSF. Using menuitems, it is very easy to execute both ajax and non-ajax actions as well as directly navigating to other resources.
Source
<h:form id="form">
<p:menubar>
<p:submenu label="Barca" labelStyleClass="barca">
<p:menuitem value="Home" url="http://www.fcbarcelona.com"></p:menuitem>
</p:submenu>
<p:submenu label="File">
<p:submenu>
<f:facet name="label">
<p:menuitem value="New" icon="/images/new.png"/>
</f:facet>
<p:menuitem value="Project" url="\#" helpText="CTRL+N"/>
<p:menuitem value="Other" url="\#" helpText="CTRL+O"/>
</p:submenu>
<p:menuitem value="Open" url="\#" icon="/images/open.png" />
<p:menuitem value="Quit" url="\#"></p:menuitem>
</p:submenu>
<p:submenu label="Edit">
<p:menuitem value="Undo" url="\#" styleClass="undo" helpText="CTRL+Z" icon="/images/undo.png"></p:menuitem>
<p:menuitem value="Redo" url="\#" styleClass="redo" helpText="CTRL+Y" icon="/images/redo.png"></p:menuitem>
</p:submenu>
<p:submenu label="Help">
<p:menuitem value="Contents" url="\#"></p:menuitem>
<p:submenu>
<f:facet name="label">
<p:menuitem value="Search" icon="/images/search.png" />
</f:facet>
<p:submenu label="Text">
<p:menuitem value="Workspace" url="\#" />
</p:submenu>
<p:menuitem value="File" url="\#" />
</p:submenu>
</p:submenu>
<p:submenu label="Actions">
<p:submenu label="Ajax">
<p:menuitem value="Save" actionListener="\#{buttonBean.save}" update="messages"/>
<p:menuitem value="Update" actionListener="\#{buttonBean.update}" update="messages"/>
</p:submenu>
<p:submenu label="Non-Ajax">
<p:menuitem value="Delete" actionListener="\#{buttonBean.delete}" update="messages" ajax="false"/>
</p:submenu>
</p:submenu>
<p:submenu>
<f:facet name="label">
<p:menuitem value="Quit" url="http://www.primefaces.org" />
</f:facet>
</p:submenu>
</p:menubar>
<p:messages id="messages"/>
<p:ajaxStatus style="width:16px;height:16px;">
<f:facet name="start">
<h:graphicImage value="../design/ajaxloading.gif" />
</f:facet>
<f:facet name="complete">
<h:outputText value="" />
</f:facet>
</p:ajaxStatus>
</h:form>