Merge "Enables the use of session management in Jetty." into stable-2.5
diff --git a/gerrit-pgm/src/main/java/com/google/gerrit/pgm/http/jetty/JettyServer.java b/gerrit-pgm/src/main/java/com/google/gerrit/pgm/http/jetty/JettyServer.java
index 2e6274c..5823940 100644
--- a/gerrit-pgm/src/main/java/com/google/gerrit/pgm/http/jetty/JettyServer.java
+++ b/gerrit-pgm/src/main/java/com/google/gerrit/pgm/http/jetty/JettyServer.java
@@ -38,6 +38,7 @@
 import org.eclipse.jetty.server.handler.ContextHandlerCollection;
 import org.eclipse.jetty.server.handler.RequestLogHandler;
 import org.eclipse.jetty.server.nio.SelectChannelConnector;
+import org.eclipse.jetty.server.session.SessionHandler;
 import org.eclipse.jetty.server.ssl.SslSelectChannelConnector;
 import org.eclipse.jetty.servlet.DefaultServlet;
 import org.eclipse.jetty.servlet.FilterHolder;
@@ -315,6 +316,11 @@
       final JettyEnv env) throws MalformedURLException, IOException {
     final ServletContextHandler app = new ServletContextHandler();
 
+    // This enables the use of sessions in Jetty, feature available
+    // for Gerrit plug-ins to enable user-level sessions.
+    //
+    app.setSessionHandler(new SessionHandler());
+
     // This is the path we are accessed by clients within our domain.
     //
     app.setContextPath(contextPath);