【问题标题】:Programmatically adding HttpSessionListener to Jetty not working以编程方式将 HttpSessionListener 添加到 Jetty 不起作用
【发布时间】:2016-02-02 20:55:22
【问题描述】:

我正在使用 Jetty 9 嵌入式并尝试使用 ServletContext.addListener(T) 从我的 Servlet.init() 方法中添加 HttpSessionListener。但是,我的会话侦听器上的方法永远不会被调用。同时,当我让我的监听器类实现ServletRequestListener 时,请求监听器相关的方法被调用。我确实打电话给getSession(),所以应该触发会话创建。

任何想法,解决方法?我误读了规范吗?已知问题?

【问题讨论】:

    标签: java servlets jetty embedded-jetty jetty-9


    【解决方案1】:

    ServletContext.addListener() 仅在狭窄范围内(按规范)受支持。

    它可以从 2 个代码路径之一使用。

    1. ServletContainerInitializer.onStartup(Set<Class<?>> c, ServletContext ctx)
    2. ServletContextListener.contextInitialized(ServletContextEvent sce)

    ServletContext.addListener() 的所有其他用途均无效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-01
      • 1970-01-01
      • 2013-07-15
      相关资源
      最近更新 更多