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

Esportare gli utenti di Liferay

Qualsiasi moderno sistema che gestisca il login degli utenti, consente sicuramente anche la possibilità di esportare l'elenco di tali utenti; Liferay non è da meno, pertanto vediamo come fare e, soprattutto, cosa possiamo fare.

Innanzitutto è necessario accedere alla pagina per la gestione degli utenti: Pannello di controllo → Utenti e Organizzazioni → Tutti gli Utenti.

Una volta caricata la pagina, è necessario cliccare sul pulsante Esporta Utenti per avviare il processo e scaricare così un file CSV contenente l'intero elenco di utenti.

Mmm, abbiamo finito? A dire il vero no, perchè se apriamo il file CSV appena creato ci rendiamo conto che, per ogni utente, sono stati esportati solamente i campi fullName ed emailAddress; insomma non è proprio il massimo per un'esportazione massiva.

Bene, allora facciamo un hook o un ext e modifichiamo il comportamento standard! Assolutamente no, anzi, per fortuna no! Infatti Liferay, in questo caso, ci consente di decidere cosa esportare semplicemente impostando una property di portale:

users.export.csv.fields=fullName,emailAddress

Guarda caso l'impostazione di default prevede solamente i campi fullName ed emailAddress...

E' quindi sufficiente definire i propri valori all'interno del solito file portal-ext.properties e riavviare il portale; un esempio?

users.export.csv.fields=firstName,lastName,fullName,emailAddress,jobTitle,lastLoginIP

Ma la cosa bella è che non dobbiamo limitarci solamente ad indicare i nomi delle colonne del database della tabella User; possiamo infatti specificare il nome di qualsiasi campo per il quale esista un relativo metodo getter (i lettori più attenti si saranno già accorti della cosa visto che il campo fullName è calcolato a runtime).

Abbiamo finito adesso? Ancora no, perchè oltre ai campi "normali" possiamo esportare anche i custom field associati all'entità User! E' infatti sufficiente utilizzare il prefisso expando: seguito dal nome del custom field ed il gioco è fatto! Ad esempio:

users.export.csv.fields=firstName,lastName,fullName,emailAddress,expando:fiscalCode,expando:vatNumber

E adesso esportate a manetta!

Commenti
Aggiungi Commento
Antonio Musarra
Ciao Marco..
Una cosa che non ho mail provato. L'import dei custom fields funziona con lo stesso meccanismo? Tu hai provato?

Bye,
Antonio.
Inviato il 09/02/16 18.23.
Marco Napolitano
Ciao,
cosa intendi con "Import dei custom field"?
Liferay non ha una funzionalità nativa di importazione di utenti o custom field; a cosa stai facendo riferimento?
Inviato il 19/02/16 13.21 in risposta a Antonio Musarra.