bloggers bloggers

Marco Napolitano
Messaggi: 68
Stelle: 0
Data: 15/11/17
Jader Jed Francia
Messaggi: 50
Stelle: 0
Data: 22/09/17
Ezio Lombardi
Messaggi: 9
Stelle: 0
Data: 23/06/17
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
marcello marangio
Messaggi: 4
Stelle: 0
Data: 05/07/13
Marco Mancini
Messaggi: 1
Stelle: 0
Data: 05/06/13
Indietro

Usare un vostro Service all'interno di un template velocity

Magari non vi è ancora capitato, ma potrebbe essere comodo utilizzare all'interno di un template velocity del codice applicativo di un vostro service.

I casi d'uso sono molteplici, ovviamente, ma l'idea è molto semplice: mi sono già sbattuto a fare tutta questa logica nello strato dei miei servizi e ora che sono nel tema o nel template di un web content mi sarebbe davvero molto comodo poterla riutilizzare senza doverla stare a riscrivere.

Peccato che è un po' complicato, perché se chiamo il mio service "semplicemente" così non mi viene risolta la variabile:

#set ($personeLocalService = $serviceLocator.findService("it.dvel.playground.service.PersoneLocalService"))

Allora come fare? Non funziona! Si è rotto!! :)

No, nulla di tutto questo! :)

Il problema è che dovete invocare il $serviceLocator passandogli il context dal quale recuperare il vostro service.

Ecco allora che la cosa comincia a funzionare se io chiamo il mio $serviceLocator così:

#set ($personeLocalService = $serviceLocator.findService("my-fantastic-new-and-powerful-portlet", "it.dvel.playground.service.PersoneLocalService"))

Spero d'esservi stato d'aiuto!

Se avete dubbi o commenti potete postarli qui sotto!

Alla prossima! :D

Commenti
Nessun commento. Vuoi essere il primo.