diff options
| author | Alex Rudyy <orudyy@apache.org> | 2013-04-30 14:41:57 +0000 |
|---|---|---|
| committer | Alex Rudyy <orudyy@apache.org> | 2013-04-30 14:41:57 +0000 |
| commit | cf1388bd755e81465c016b50ae041f6835f2b377 (patch) | |
| tree | 0121f163a4b4bb96cf7c9d63bc4174b1e223b4bb /java | |
| parent | 6b7201f00defbe3ec355abf592241c1c9ea8c4a0 (diff) | |
| download | qpid-python-cf1388bd755e81465c016b50ae041f6835f2b377.tar.gz | |
QPID-4791: Change JSESSIONID cookie name to include the port number in order to avoid JSESSIONID cookie name collisions when running multiple web management consoles in the same broswer comminication with the brokers started on different ports of the same host
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1477668 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
| -rw-r--r-- | java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java b/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java index 60ec7717cb..43328c16bf 100644 --- a/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java +++ b/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java @@ -138,6 +138,8 @@ public class HttpManagement extends AbstractPluginAdapter implements HttpManagem put(PluginFactory.PLUGIN_TYPE, String.class); }}); + private static final String JSESSIONID_COOKIE_PREFIX = "JSESSIONID_"; + private Server _server; public HttpManagement(UUID id, Broker broker, Map<String, Object> attributes) @@ -218,6 +220,7 @@ public class HttpManagement extends AbstractPluginAdapter implements HttpManagem } Server server = new Server(); + int lastPort = -1; for (Port port : ports) { if (State.QUIESCED.equals(port.getActualState())) @@ -253,6 +256,7 @@ public class HttpManagement extends AbstractPluginAdapter implements HttpManagem { throw new IllegalArgumentException("Unexpected protocol " + protocols); } + lastPort = port.getPort(); connector.setPort(port.getPort()); server.addConnector(connector); } @@ -313,7 +317,7 @@ public class HttpManagement extends AbstractPluginAdapter implements HttpManagem root.addServlet(new ServletHolder(new HelperServlet()), "/rest/helper"); final SessionManager sessionManager = root.getSessionHandler().getSessionManager(); - + sessionManager.setSessionCookie(JSESSIONID_COOKIE_PREFIX + lastPort); sessionManager.setMaxInactiveInterval((Integer)getAttribute(TIME_OUT)); return server; |
