diff --git a/framework/config/src/org/apache/cloudstack/framework/config/ConfigKey.java b/framework/config/src/org/apache/cloudstack/framework/config/ConfigKey.java index 4a41306bf55..fb2a57b71f6 100644 --- a/framework/config/src/org/apache/cloudstack/framework/config/ConfigKey.java +++ b/framework/config/src/org/apache/cloudstack/framework/config/ConfigKey.java @@ -140,7 +140,8 @@ public class ConfigKey { public T value() { if (_value == null || isDynamic()) { ConfigurationVO vo = s_depot != null ? s_depot.global().findById(key()) : null; - _value = valueOf((vo != null && vo.getValue() != null) ? vo.getValue() : defaultValue()); + final String value = (vo != null && vo.getValue() != null) ? vo.getValue() : defaultValue(); + _value = ((value == null) ? (T)defaultValue() : valueOf(value)); } return _value; diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index 79bc3d5bccf..b135b4ebd77 100644 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -1754,7 +1754,7 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe if (configVo != null) { final ConfigKey key = _configDepot.get(param.getName()); if (key != null) { - configVo.setValue(key.valueIn(id).toString()); + configVo.setValue(key.valueIn(id) == null ? null : key.valueIn(id).toString()); configVOList.add(configVo); } else { s_logger.warn("ConfigDepot could not find parameter " + param.getName() + " for scope " + scope);