Liferay 6.2 ha introdotto numerose novità: una di queste riguarda l'introduzione di nuove taglib per la realizzazione della barra di navigazione nelle portlet del pannello di controllo, al fine di consentire una gestione uniforme da parte di tutti gli sviluppatori.
Vediamo quindi come fare per realizzare una semplice barra di navigazione con un menu a 2 livelli.
Innanzitutto occorre realizzare una normale portlet di backend da inserire, ad esempio, nella sezione site_administration.content
del portale; dopodichè è sufficiente inserire il seguente codice all'interno della pagina JSP:
<% String toolbarItem = ParamUtil.getString(renderRequest, "toolbarItem", "view-all"); %> <aui:nav-bar> <aui:nav> <aui:nav-item href="/..." label="view-all" selected='<%="view-all".equals(toolbarItem) %>' /> <aui:nav-item dropdown="true" iconCssClass="icon-plus"
label="add" selected='<%="add".equals(toolbarItem) %>'> <aui:nav-item href="/..." label="user" /> <aui:nav-item href="/..." label="organization" /> <aui:nav-item href="/..." label="group" /> </aui:nav-item> <aui:nav-item href="/..." iconCssClass="icon-download"
label="export" selected='<%="export".equals(toolbarItem) %>' /> </aui:nav> </aui:nav-bar>
Come prima cosa va recuperato dalla request il parametro opzionale toolbarItem
che servirà ad evidenziare graficamente il pulsante su cui si è cliccato; dopodichè si inizia a costruire la barra di navigazione attraverso la combinazione delle taglib <aui:nav>
e <aui:nav-bar>
.
I vari pulsanti della barra di navigazione vengono realizzati attraverso la taglib <aui:nav-item>
ed alcuni dei suoi attributi:
href
, render URL a cui punta il pulsante (non dimenticare di aggiungere il parametrotoolbarItem
);label
, testo associato al pulsante;selected
, verifica il valore del parametrotoolbarItem
per evidenziare il pulsante;dropDown
, da valorizzare atrue
per creare menu di secondo livello;iconCssClass
, classe CSS da applicare per mostrare l'icona del pulsante.