diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index 2ba6ac1ae97b..865edf67df65 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -725,6 +725,21 @@ private String validateConfigurationValue(String name, String value, String scop type = c.getType(); } + String errMsg = null; + try { + if (type.equals(Integer.class)) { + errMsg = "There was error in trying to parse value: " + value + ". Please enter a valid integer value for parameter " + name; + Integer.parseInt(value); + } else if (type.equals(Float.class)) { + errMsg = "There was error in trying to parse value: " + value + ". Please enter a valid float value for parameter " + name; + Float.parseFloat(value); + } + } catch (Exception e) { + // catching generic exception as some throws NullPointerException and some throws NumberFormatExcpeion + s_logger.error(errMsg); + return errMsg; + } + if (value == null) { if (type.equals(Boolean.class)) { return "Please enter either 'true' or 'false'.";