2012-01-09 33 views
7

Mi piacerebbe personalizzare il meccanismo di Liferay 6.0.6 per aggiornare la password.Liferay - personalizzare la password di modifica

Nel nostro progetto abbiamo deciso di gestire gli utenti da soli, quindi conserviamo tutti i dati come nomi utente e password nel nostro database. Non vogliamo utilizzare il database di Liferay ma sembra che Liferay lo stia mantenendo per sé e lo usi comunque. Di conseguenza abbiamo la password dell'utente in due punti e dobbiamo occuparci della sincronizzazione dei dati.

La personalizzazione del meccanismo di autenticazione è stata semplice: con auth.pipeline in portal-ext.property.

Ora mi piacerebbe chiamare il mio metodo personalizzato, quando l'utente sta cambiando la propria password tramite il portlet MyAccount. Ho bisogno di catturare sia la password corrente che nuova digitata dall'utente nel portlet.

Non vedo alcuna proprietà del portale per l'evento della password di aggiornamento. Ho provato a scrivere un plugin hook personalizzando UserLocalService, ma senza risultati fino ad ora. È possibile farlo con un gancio?

Qualsiasi aiuto sarebbe apprezzato. Grazie in anticipo.

risposta

3

Ho trovato che l'azione che stavo cercando è com.liferay.portlet.myaccount.action.EditUserAction e come azione struts può essere personalizzata utilizzando il plugin ext (dal momento che Liferay 6.1 utilizza anche il plugin hook). Liferay-plugins-sdk può essere utilizzato per creare plug-in distribuibili, ma è anche possibile modificare i file di configurazione (in questo caso struts-config-ext.xml) direttamente su liferay. Spero che questo possa essere utile per alcuni di voi.

+0

Cosa devo restituire nel metodo 'protected Object [] updateUser'? – Queequeg

+0

Salve, se si controlla il metodo object [] updateUser() protetto di com.liferay.portlet.usersadmin.action.EditUserAction. Restituisce return new Object [] {user, oldScreenName, oldLanguageId}; –

+0

mi ha aiutato, grazie mille – yannicuLar

0

se avete solo bisogno di cambiare la password da id utente, guardare there - la modifica della password per ID utente (set nuovo passaggio, conferma, e la reimpostazione della password booleano)

(updaterUser non ha funzionato per me)

Problemi correlati