如何在嵌入式Jetty服务器中为ShiroSession添加HttpSessionListener?

时间:2017-05-24 04:02:53

标签: java shiro httpsession

我正在开发一个支持SimpleSession和HttpSession的应用程序。已经为SimpleSession实现了SessionListener,但这对Http Sessions不起作用。该应用程序使用嵌入式Jetty服务器。 SimpleSession的现有实现在下面提到 -

    getShiroSessionManager().getSessionListeners().add(new org.apache.shiro.session.SessionListener() {
    /**
    * {@inheritDoc}
    */
    @Override
    public void onStart(Session session) {
       LOGGER.info("Session started : " + session.getId());
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public void onExpiration(Session session) {
      LOGGER.info("Session expired : " + session.getId());
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public void onStop(Session session) {
        LOGGER.info("Session stopped : " + session.getId());
    }
    });
    /**
     * Gets the shiro session manager.
     * 
     * @return the shiro session manager
     */
    private static AbstractValidatingSessionManager getShiroSessionManager() {
    SessionsSecurityManager ssm = (SessionsSecurityManager) SecurityUtils.getSecurityManager();
    return (AbstractValidatingSessionManager) ssm.getSessionManager();
  }

我想跟踪我的HttpSession。我怎样才能为Shiro Http Sessions实现这样的目标?

0 个答案:

没有答案