Grizzly 2:如何注册自己的SessionManager

时间:2015-08-17 13:40:10

标签: java session grizzly

我想替换Grizzly的内置DefaultSessionManager,但我找不到任何关于它的文档(源代码除外)。 Grizzly独立运行作为HttpServer和Jersey for Jersey资源。

org.glassfish.grizzly.http.server.Request我找到了这些:

    /**
     * @return {@link SessionManager}
     */
    protected SessionManager getSessionManager() {
        return sessionManager != null
            ? sessionManager
            : DefaultSessionManager.instance();
    }

    /**
     * Set {@link SessionManager}, <tt>null</tt> value implies {@link DefaultSessionManager}
     * @param sessionManager 
     */    
    protected void setSessionManager(final SessionManager sessionManager) {
        this.sessionManager = sessionManager;
    }

我的理解是否正确,我必须扩展Request才能注册我自己的SessionManager实现?这听起来非常复杂......

更新:根据建议,我提交了问题GRIZZLY-1798

1 个答案:

答案 0 :(得分:0)

问题已经结束,SessionManager现在可以在HttpServerNetworkListener注册。例如:

HttpServer httpServer = new HttpServer();
ServerConfiguration serverConfiguration = httpServer.getServerConfiguration();
serverConfiguration.setSessionManager(new MySessionManager());