EMPIREDB-410
ObjectUtils getBoolean default when empty
diff --git a/empire-db/src/main/java/org/apache/empire/commons/ObjectUtils.java b/empire-db/src/main/java/org/apache/empire/commons/ObjectUtils.java
index 90a8bfa..a29d9d8 100644
--- a/empire-db/src/main/java/org/apache/empire/commons/ObjectUtils.java
+++ b/empire-db/src/main/java/org/apache/empire/commons/ObjectUtils.java
@@ -589,9 +589,14 @@
return ((Boolean)v).booleanValue();
if (v instanceof Number)
return (((Number)v).intValue()!=0);
- // parse String for boolean value
- String val = v.toString();
- return (val.equalsIgnoreCase("Y") || val.equalsIgnoreCase("true"));
+ if (v instanceof String) {
+ String val = ((String)v);
+ if (StringUtils.isEmpty(val))
+ return defValue;
+ // check for allowed true values
+ return (val.equalsIgnoreCase("true") || val.equalsIgnoreCase("Y"));
+ }
+ return defValue;
}
/**