0

配置:Guice 1.0、Apache Tomcat 6.0

我目前正在使用以下方法将 Guice 模块中配置的对象手动注入到我的 servlet 中:

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 );
}

我怎样才能对 HttpSessionAttributeListener 做同样的事情(因为它没有任何生命周期方法)?

4

1 回答 1

0

事件监听器是关于生命周期事件的。例如,attributeAdded()在将属性添加到会话后立即调用,类似于 Servlet 的 init()。

将对象注入 HttpSession 可能更有意义。在这种情况下,你想在HttpSessionListener.sessionCreated().

于 2009-09-10T09:52:13.183 回答