diff --git a/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java index 08ba1a31b40..bea9cd0198d 100755 --- a/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java @@ -826,12 +826,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati return _configDao.findByName(name); } - value = value.trim(); - - if (value.isEmpty() || value.equals("null")) { - value = null; - } - String scope = null; Long id = null; int paramCountCheck = 0; @@ -871,6 +865,12 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati throw new InvalidParameterValueException("cannot handle multiple IDs, provide only one ID corresponding to the scope"); } + value = value.trim(); + + if (value.isEmpty() || value.equals("null")) { + value = (id == null) ? null : ""; + } + final String updatedValue = updateConfiguration(userId, name, catergory, value, scope, id); if (value == null && updatedValue == null || updatedValue.equalsIgnoreCase(value)) { return _configDao.findByName(name);