Author: jleroux
Date: Fri Mar 16 09:35:06 2018 New Revision: 1826938 URL: http://svn.apache.org/viewvc?rev=1826938&view=rev Log: Fixed: Logout do not remove autoLogin (OFBIZ-4959) I used the only available (and I must say confusing) WebappInfo.getName() when I needed the webAppName not the WebappInfoName. So this put in a new WebappInfo.getMountPoint() and use it in getWebappInfo Also use LoginWorker.autoLoginSet() in different places where I missed it. In other words all autoUserLogin coockies are deleted on login and logout, and an autoUserLogin cookie is created when going locally from a webapp to another, with checkExternalLoginKey Modified: ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/component/ComponentConfig.java ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ExternalLoginKeysManager.java Modified: ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/component/ComponentConfig.java URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/component/ComponentConfig.java?rev=1826938&r1=1826937&r2=1826938&view=diff ============================================================================== --- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/component/ComponentConfig.java (original) +++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/component/ComponentConfig.java Fri Mar 16 09:35:06 2018 @@ -316,7 +316,8 @@ public final class ComponentConfig { WebappInfo webappInfo = null; List<WebappInfo> webappsInfo = getAppBarWebInfos(serverName); for(WebappInfo currApp : webappsInfo) { - if (webAppName.equals(currApp.getName())) { + String currWebAppName = currApp.getMountPoint().replace("/", "").replace("*", ""); + if (webAppName.equals(currWebAppName)) { webappInfo = currApp; break; } @@ -944,6 +945,10 @@ public final class ComponentConfig { return name; } + public String getMountPoint() { + return mountPoint; + } + public String getTitle() { return title; } Modified: ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ExternalLoginKeysManager.java URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ExternalLoginKeysManager.java?rev=1826938&r1=1826937&r2=1826938&view=diff ============================================================================== --- ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ExternalLoginKeysManager.java (original) +++ ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ExternalLoginKeysManager.java Fri Mar 16 09:35:06 2018 @@ -157,7 +157,8 @@ public class ExternalLoginKeysManager { GenericValue currentUserLogin = (GenericValue) session.getAttribute("userLogin"); if (currentUserLogin != null) { if (currentUserLogin.getString("userLoginId").equals(userLogin.getString("userLoginId"))) { - // is the same user, just carry on... + // same user, just make sure the autoUserLogin is set to the same and that the client cookie has the correct userLoginId + LoginWorker.autoLoginSet(request, response); return "success"; } @@ -171,6 +172,9 @@ public class ExternalLoginKeysManager { Debug.logWarning("Could not find userLogin for external login key: " + externalKey, module); } + // make sure the autoUserLogin is set to the same and that the client cookie has the correct userLoginId + LoginWorker.autoLoginSet(request, response); + return "success"; } |
Free forum by Nabble | Edit this page |