From cbf544382cd6e528de589c81703fdaba14d8bf12 Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Fri, 30 Jun 2017 11:55:54 +0000
Subject: [PATCH] SSDM-5078 : Configurable deployed app name, defaults to be
 backwards compatible

SVN: 38484
---
 .../client/web/client/application/Dict.java        |  2 ++
 .../web/client/application/GenericConstants.java   | 14 ++++++++++----
 .../cisd/openbis/public/common-dictionary.js       |  2 +-
 3 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java
index adc8a2a55eb..f74eb3bfbac 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java
@@ -37,6 +37,8 @@ public abstract class Dict
         // Can not be instantiated.
     }
 
+    public static final String DEPLOYED_APPLICATION_NAME = "deployedAppName";
+
     public static final String SPRING_APPLICATION_NAME = "springApplicationName";
 
     public static final String APPLICATION_NAME = "applicationName";
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericConstants.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericConstants.java
index eb37b76e1e0..52a016ba333 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericConstants.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericConstants.java
@@ -41,7 +41,9 @@ public final class GenericConstants
      */
     public static final String ID_PREFIX = "openbis_";
 
-    private static final String APPLICATION_NAME = Dictionary.getDictionary("common").get(Dict.SPRING_APPLICATION_NAME);
+    private static final String DEPLOYED_APPLICATION_NAME = Dictionary.getDictionary("common").get(Dict.DEPLOYED_APPLICATION_NAME);
+
+    private static final String SPRING_APPLICATION_NAME = Dictionary.getDictionary("common").get(Dict.SPRING_APPLICATION_NAME);
 
     public static final String COMMON_SERVER_NAME = createServicePath("common");
 
@@ -50,9 +52,13 @@ public final class GenericConstants
      */
     public final static String createServicePath(final String serviceName)
     {
-        // Kind of hack. Unclear why an additional APPLICATION_NAME in productive mode is needed.
-        return "/" + APPLICATION_NAME + "/" + (GWT.isScript() ? APPLICATION_NAME + "/" : "")
-                + serviceName;
+        if (GWT.isProdMode()) // Is Production
+        {
+            return "/" + DEPLOYED_APPLICATION_NAME + "/" + SPRING_APPLICATION_NAME + "/" + serviceName;
+        } else
+        {
+            return "/" + SPRING_APPLICATION_NAME + "/" + serviceName;
+        }
     }
 
     /** Name of the servlet to download an experiment attachment. */
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js
index 52a18e9704d..2f01cada427 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js
@@ -7,7 +7,7 @@ entityTypes.experiment = "Experiment";
 entityTypes.experiments = entityTypes.experiment + "s";
 
 var common = {
-		
+  deployedAppName: "openbis",
   springApplicationName: "openbis",
   applicationName: "openBIS",
   openbis_instance: "",
-- 
GitLab