EMPIREDB-282
JSF options: allow custom text for null value
diff --git a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
index fca3d70..c3d7397 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
@@ -698,12 +698,13 @@
// Lookup and Print value
Options options = vi.getOptions();
if (options != null && !options.isEmpty() && !hasFormatOption(vi, "nolookup"))
- { // Check for Options
+ { // Check for Options
String text = options.get(value);
- if (text != null)
+ if (StringUtils.isNotEmpty(text))
return vi.getText(text);
// Error
- InputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
+ if (value!=null)
+ InputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
}
// value
if (value == null)
diff --git a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
index de2ad93..955f981 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
@@ -33,6 +33,7 @@
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.OptionEntry;
import org.apache.empire.commons.Options;
+import org.apache.empire.commons.StringUtils;
import org.apache.empire.data.Column;
import org.apache.empire.exceptions.InvalidArgumentException;
import org.apache.empire.exceptions.UnexpectedReturnValueException;
@@ -299,12 +300,11 @@
if (attrValue instanceof Options)
{ // Check for Options
String text = ((Options) attrValue).get(value);
- if (text != null)
- {
+ if (StringUtils.isNotEmpty(text))
return vi.getText(text);
- }
// Error
- RadioInputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
+ if (value!=null)
+ RadioInputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
}
}
}
diff --git a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
index 36679ef..2a06c40 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
@@ -30,6 +30,7 @@
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.OptionEntry;
import org.apache.empire.commons.Options;
+import org.apache.empire.commons.StringUtils;
import org.apache.empire.data.Column;
import org.apache.empire.exceptions.InvalidArgumentException;
import org.apache.empire.exceptions.UnexpectedReturnValueException;
@@ -320,10 +321,11 @@
if (attrValue instanceof Options)
{ // Check for Options
String text = ((Options) attrValue).get(value);
- if (text != null)
+ if (StringUtils.isNotEmpty(text))
return vi.getText(text);
// Error
- SelectInputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
+ if (value!=null)
+ SelectInputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
}
}
}
diff --git a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
index 7e52065..cdef3b1 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
@@ -238,10 +238,11 @@
if (options != null && !options.isEmpty())
{ // Check for Options
String text = options.get(value);
- if (text != null)
+ if (StringUtils.isNotEmpty(text))
return vi.getText(text);
// Error
- log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
+ if (value!=null)
+ TextInputControl.log.error("The element '" + String.valueOf(value) + "' is not part of the supplied option list.");
}
// Check Value
if (value == null)