You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2015/09/21 14:13:29 UTC

[2/3] incubator-brooklyn git commit: give the jetty server JSESSION a unique ID to prevent conflicts

give the jetty server JSESSION a unique ID to prevent conflicts


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/d432810f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/d432810f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/d432810f

Branch: refs/heads/master
Commit: d432810fd21b2d2e75121657c78f36361d1a62cb
Parents: a20f85b
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Sun Sep 20 17:16:23 2015 +0100
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Sun Sep 20 17:43:40 2015 -0500

----------------------------------------------------------------------
 .../java/org/apache/brooklyn/launcher/BrooklynWebServer.java   | 6 ++++++
 1 file changed, 6 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d432810f/usage/launcher/src/main/java/org/apache/brooklyn/launcher/BrooklynWebServer.java
----------------------------------------------------------------------
diff --git a/usage/launcher/src/main/java/org/apache/brooklyn/launcher/BrooklynWebServer.java b/usage/launcher/src/main/java/org/apache/brooklyn/launcher/BrooklynWebServer.java
index 5d58181..50f0a8c 100644
--- a/usage/launcher/src/main/java/org/apache/brooklyn/launcher/BrooklynWebServer.java
+++ b/usage/launcher/src/main/java/org/apache/brooklyn/launcher/BrooklynWebServer.java
@@ -39,6 +39,7 @@ import javax.servlet.DispatcherType;
 
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.SessionManager;
 import org.eclipse.jetty.server.nio.SelectChannelConnector;
 import org.eclipse.jetty.server.ssl.SslSelectChannelConnector;
 import org.eclipse.jetty.servlet.FilterHolder;
@@ -588,6 +589,11 @@ public class BrooklynWebServer {
         boolean isRoot = cleanPathSpec.isEmpty();
 
         WebAppContext context = new WebAppContext();
+        // use a unique session ID to prevent interference with other web apps on same server (esp for localhost);
+        // it might be better to make this brooklyn-only or base on the management-plane ID;
+        // but i think it actually *is* per-server instance, since we don't cache sessions server-side,
+        // so i think this is write. [Alex 2015-09] 
+        context.setInitParameter(SessionManager.__SessionCookieProperty, SessionManager.__DefaultSessionCookie+"_"+"BROOKLYN"+Identifiers.makeRandomId(6));
         context.setAttribute(BrooklynServiceAttributes.BROOKLYN_MANAGEMENT_CONTEXT, managementContext);
         for (Map.Entry<String, Object> attributeEntry : attributes.entrySet()) {
             context.setAttribute(attributeEntry.getKey(), attributeEntry.getValue());