Iniettare un oggetto in un HttpSessionAttributeListener tramite Guice?
-
05-07-2019 - |
Domanda
Configurazione : Guice 1.0, Apache Tomcat 6.0
Attualmente sto iniettando manualmente oggetti configurati in un modulo Guice, nel mio servlet, usando questo metodo:
public void init( ServletConfig config ) throws ServletException
{
super.init( config );
ServletContext sc = config.getServletContext();
Injector injector = (Injector) sc
.getAttribute( Constants.Guice.INJECTOR_APP_CONTEXT_KEY );
injector.injectMembers( this );
}
Come posso fare lo stesso in un HttpSessionAttributeListener (dal momento che non ha metodi del ciclo di vita)?
Soluzione
Il listener di eventi riguarda gli eventi del ciclo di vita. Ad esempio, attributoAdded ()
viene chiamato subito dopo l'aggiunta di un attributo a una sessione, simile a init () per Servlet.
Probabilmente ha più senso iniettare oggetto in HttpSession. In tal caso, vuoi farlo in HttpSessionListener.sessionCreated ()
.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow