bloggers bloggers

Marco Napolitano
Messaggi: 79
Stelle: 0
Data: 17/02/22
Jader Jed Francia
Messaggi: 63
Stelle: 0
Data: 18/02/21
Paolo Gambetti
Messaggi: 2
Stelle: 0
Data: 11/11/19
Katia Pazzi
Messaggi: 1
Stelle: 0
Data: 27/06/19
Ezio Lombardi
Messaggi: 11
Stelle: 0
Data: 10/04/18
Chiara Mambretti
Messaggi: 25
Stelle: 0
Data: 27/02/17
Serena Traversi
Messaggi: 3
Stelle: 0
Data: 21/07/16
Francesco Falanga
Messaggi: 8
Stelle: 0
Data: 14/06/16
Antonio Musarra
Messaggi: 2
Stelle: 0
Data: 18/11/13
Simone Celli Marchi
Messaggi: 6
Stelle: 0
Data: 09/07/13
Indietro

Embeddare una portlet dentro l'altra

Recentemente mi si è presentata una problematica alquanto singolare: in pratica (ma non sto a spiegarvi il perchè di questo requisito) ho avuto la necessità di embeddare una portlet dentro un'altra.

In pratica, all'interno della JSP della portlet 1, dovevo visualizzare la portlet 2 e fare in modo che fosse perfettamente funzionante in tutto.

Dopo un pò di prove e ricerche ho trovato una soluzione piuttosto semplice da implementare e senza scrivere righe di codice; la soluzione si articola infatti in 2 soli passaggi.

Il primo passaggio consiste nell'inserire la seguente taglib nella JSP in cui volete embeddare la portlet:

<liferay-portlet:runtime portletName="1_WAR_miopluginportlet" />

In pratica è sufficiente passare il nome completo della portlet da visualizzare; opzionalmente è anche possibile passare le preferenze della portlet attraverso l'attributo defaultPreferences.

Questo primo passaggio potrebbe anche essere l'ultimo se la portlet embeddata non necessita di eseguire processAction; viceversa sarà necessario inserire il seguente parametro di inizializzazione all'interno del file portlet.xml che contiene la definizione della portlet embeddata:

<init-param>

<name>check-auth-token</name>

<value>false</value>

</init-param>

Questo farà sì che il portale bypassi il controllo sul token di autenticazione (il parametro p_auth per intenderci).

Precedente
Commenti
Nessun commento. Vuoi essere il primo.