This is an automated email from the ASF dual-hosted git repository.

doebele pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/empire-db.git


The following commit(s) were added to refs/heads/master by this push:
     new c3be001f EMPIREDB-422 Value format optimization
c3be001f is described below

commit c3be001f59564a98a6f4da44386fe2da7d764bc9
Author: Rainer Döbele <[email protected]>
AuthorDate: Mon Jun 3 15:15:58 2024 +0200

    EMPIREDB-422
    Value format optimization
---
 .../apache/empire/jsf2/components/ControlTag.java  |  2 +-
 .../org/apache/empire/jsf2/components/LinkTag.java |  5 +-
 .../apache/empire/jsf2/components/MenuItemTag.java |  3 +-
 .../apache/empire/jsf2/components/MenuListTag.java |  3 +-
 .../apache/empire/jsf2/components/SelectTag.java   |  4 +-
 .../apache/empire/jsf2/components/TitleTag.java    |  3 +-
 .../apache/empire/jsf2/components/ValueTag.java    |  2 +-
 .../empire/jsf2/controls/CheckboxInputControl.java |  8 +--
 .../apache/empire/jsf2/controls/InputControl.java  | 66 ++++++++++++----------
 .../empire/jsf2/controls/RadioInputControl.java    |  3 +-
 .../empire/jsf2/controls/TextInputControl.java     |  9 ++-
 .../empire/jsf2/utils/TagEncodingHelper.java       | 55 +++++++-----------
 .../org/apache/empire/commons/StringUtils.java     |  2 +-
 13 files changed, 81 insertions(+), 84 deletions(-)

diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
index d8e3d787..97c90ea6 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
@@ -395,7 +395,7 @@ public class ControlTag extends UIInput implements 
NamingContainer
             helper.writeComponentId(writer, false);
             // style class
             String controlClass = 
helper.getTagAttributeStringEx("controlClass");
-            String styleClass   = helper.getTagAttributeString("styleClass");
+            String styleClass   = 
helper.getTagAttributeString(InputControl.CSS_STYLE_CLASS);
             String contextClass = helper.getContextStyleClass(); 
             helper.writeStyleClass(writer, TagStyleClass.CONTROL.get(), 
controlClass, styleClass, contextClass);
         }
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LinkTag.java 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LinkTag.java
index 713f567f..73e5ed1e 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LinkTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LinkTag.java
@@ -257,7 +257,7 @@ public class LinkTag extends UIOutput // implements 
NamingContainer
     
     protected String getLinkStyleClass()
     {
-        return StringUtils.toString(getAttributes().get("styleClass"));
+        return 
StringUtils.toString(getAttributes().get(InputControl.CSS_STYLE_CLASS));
     }
     
     protected boolean isLinkDisabled()
@@ -281,7 +281,8 @@ public class LinkTag extends UIOutput // implements 
NamingContainer
             StringResponseWriter srw = new StringResponseWriter();
             try
             {
-                control.renderValue(vi, srw);
+                Object value = vi.getValue(true);
+                control.renderValue(value, vi, srw);
             }
             catch (IOException e)
             {   // Error rendering value
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuItemTag.java
 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuItemTag.java
index 1ea8fd36..efc3335a 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuItemTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuItemTag.java
@@ -28,6 +28,7 @@ import javax.faces.context.ResponseWriter;
 
 import org.apache.empire.commons.ObjectUtils;
 import org.apache.empire.commons.StringUtils;
+import org.apache.empire.jsf2.controls.InputControl;
 import org.apache.empire.jsf2.utils.TagEncodingHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -272,7 +273,7 @@ public class MenuItemTag extends LinkTag
     
     protected String getStyleClass()
     {
-        String styleClass = helper.getTagAttributeString("styleClass");
+        String styleClass = 
helper.getTagAttributeString(InputControl.CSS_STYLE_CLASS);
         if (parentMenu!=null)
         {
             // Style Class
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
index 24b75f98..3929024e 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
@@ -27,6 +27,7 @@ import javax.faces.context.FacesContext;
 import javax.faces.context.ResponseWriter;
 
 import org.apache.empire.commons.StringUtils;
+import org.apache.empire.jsf2.controls.InputControl;
 import org.apache.empire.jsf2.utils.TagEncodingHelper;
 import org.apache.empire.jsf2.utils.TagEncodingHelperFactory;
 import org.apache.empire.jsf2.utils.TagStyleClass;
@@ -198,7 +199,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     
     protected String getStyleClass()
     {
-        String styleClass = helper.getTagAttributeString("styleClass");
+        String styleClass = 
helper.getTagAttributeString(InputControl.CSS_STYLE_CLASS);
         if (styleClass!=null && styleClass.indexOf("{}")>0)
         {   // add level to style class
             styleClass = StringUtils.replace(styleClass, "{}", 
String.valueOf(level));
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java
index 64912ecd..237cc4ba 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java
@@ -425,10 +425,10 @@ public class SelectTag extends UIInput implements 
NamingContainer
         Map<String, Object> tagMap = getAttributes();
         Map<String, Object> inputMap = input.getAttributes();
         // css style
-        String userStyle = StringUtils.toString(tagMap.get("styleClass"));
+        String userStyle = 
StringUtils.toString(tagMap.get(InputControl.CSS_STYLE_CLASS));
         // String cssStyle = 
TagEncodingHelper.assembleStyleClassString(TagStyleClass.SELECT.get(), null, 
null, userStyle);
         String cssStyle = TagStyleClass.SELECT.append(userStyle);
-        inputMap.put("styleClass", cssStyle);
+        inputMap.put(InputControl.CSS_STYLE_CLASS, cssStyle);
         // other
         copyAttribute(inputMap, tagMap, "style");
         copyAttribute(inputMap, tagMap, "tabindex");
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/TitleTag.java 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/TitleTag.java
index ec1be2b7..15bcb61c 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/TitleTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/TitleTag.java
@@ -28,6 +28,7 @@ import javax.faces.context.ResponseWriter;
 import org.apache.empire.commons.StringUtils;
 import org.apache.empire.data.Column;
 import org.apache.empire.exceptions.InvalidArgumentException;
+import org.apache.empire.jsf2.controls.InputControl;
 import org.apache.empire.jsf2.utils.TagEncodingHelper;
 import org.apache.empire.jsf2.utils.TagEncodingHelperFactory;
 import org.apache.empire.jsf2.utils.TagStyleClass;
@@ -100,7 +101,7 @@ public class TitleTag extends UIOutput // implements 
NamingContainer
         Map<String, Object> map = getAttributes();
         String tag = StringUtils.toString(map.get("tag"));
         // Check
-        if (tag == null && title == null && !map.containsKey("styleClass"))
+        if (tag == null && title == null && 
!map.containsKey(InputControl.CSS_STYLE_CLASS))
             return null;
         // Write tag
         if (StringUtils.isEmpty(tag))
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java
index 3bb84924..d924388a 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java
@@ -101,7 +101,7 @@ public class ValueTag extends UIOutput // implements 
NamingContainer
         // Map<String, Object> map = getAttributes();
         String tagName = helper.getTagAttributeString("tag");
         String tooltip = 
helper.getValueTooltip(helper.getTagAttributeValue("title"));
-        String styleClass = helper.getTagAttributeString("styleClass");
+        String styleClass = 
helper.getTagAttributeString(InputControl.CSS_STYLE_CLASS);
         // Check
         if (StringUtils.isNotEmpty(tagName) || 
StringUtils.isNotEmpty(styleClass) || StringUtils.isNotEmpty(tooltip))
         {   // tagname
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
index edc2d8d9..ff75141e 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
@@ -49,16 +49,16 @@ public class CheckboxInputControl extends InputControl
     }
 
     @Override
-    public void renderValue(ValueInfo vi, ResponseWriter writer)
+    public void renderValue(Object value, ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-       Boolean value = (Boolean) vi.getValue(true);
+       Boolean boolValue = (value instanceof Boolean ? (Boolean)value : 
(ObjectUtils.isEmpty(value) ? null : ObjectUtils.getBoolean(value)));
         writer.startElement(HTML_TAG_DIV, null);
-        if (value == null)
+        if (boolValue == null)
         {
                // value not set
                writer.writeAttribute(HTML_ATTR_CLASS, "eTypeBoolNull", null);
-        } else if (value) 
+        } else if (boolValue) 
         {
                // value is true
                writer.writeAttribute(HTML_ATTR_CLASS, "eTypeBoolTrue", null);
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 f22bcffa..84bdfda1 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
@@ -50,33 +50,39 @@ import org.slf4j.LoggerFactory;
 public abstract class InputControl
 {
 
-    private static final Logger log                   = 
LoggerFactory.getLogger(InputControl.class);
-    
+    private static final Logger log                    = 
LoggerFactory.getLogger(InputControl.class);
+
+    // StyleClass 
+    public static final String  CSS_STYLE_CLASS        = "styleClass";
+
     // format attributes
-    public static final String  FORMAT_NULL                   = "null:";
-    public static final String  FORMAT_NULL_ATTRIBUTE         = "format:null";
+    public static final String  FORMAT_NULL            = "null:";
+    public static final String  FORMAT_NULL_ATTRIBUTE  = "format:null";
+    public static final String  FORMAT_NO_VALUE_STYLES = "noValueStyles";
+    /* obsolte from 2024-06-03
     public static final String  FORMAT_VALUE_STYLES           = "valueStyles";
     public static final String  FORMAT_VALUE_STYLES_ATTRIBUTE = 
"format:valueStyles";
-    
+    */
+
     // HTML-TAGS
-    public static final String  HTML_TAG_DIV          = "div"; 
-    public static final String  HTML_TAG_SPAN         = "span";
-    public static final String  HTML_TAG_TABLE        = "table";
-    public static final String  HTML_TAG_TR           = "tr";
-    public static final String  HTML_TAG_TD           = "td";
-    public static final String  HTML_TAG_INPUT        = "input";
-    public static final String  HTML_TAG_LABEL        = "label";
-    
+    public static final String  HTML_TAG_DIV           = "div";
+    public static final String  HTML_TAG_SPAN          = "span";
+    public static final String  HTML_TAG_TABLE         = "table";
+    public static final String  HTML_TAG_TR            = "tr";
+    public static final String  HTML_TAG_TD            = "td";
+    public static final String  HTML_TAG_INPUT         = "input";
+    public static final String  HTML_TAG_LABEL         = "label";
+
     // HTML-ATTRIBUTES
-    public static final String  HTML_ATTR_ID          = "id";
-    public static final String  HTML_ATTR_CLASS       = "class";
-    public static final String  HTML_ATTR_STYLE       = "style";
-    public static final String  HTML_ATTR_TYPE        = "type";
-    public static final String  HTML_ATTR_DISABLED    = "disabled";
-    public static final String  HTML_ATTR_CHECKED     = "checked";
-    
+    public static final String  HTML_ATTR_ID           = "id";
+    public static final String  HTML_ATTR_CLASS        = "class";
+    public static final String  HTML_ATTR_STYLE        = "style";
+    public static final String  HTML_ATTR_TYPE         = "type";
+    public static final String  HTML_ATTR_DISABLED     = "disabled";
+    public static final String  HTML_ATTR_CHECKED      = "checked";
+
     // HTML
-    public static String HTML_EXPR_NBSP = "&nbsp;";
+    public static String        HTML_EXPR_NBSP         = "&nbsp;";
 
     /*
     public InputControl()
@@ -251,11 +257,12 @@ public abstract class InputControl
         // writer
         ResponseWriter writer = context.getResponseWriter();
         // has tag?
+        Object value = vi.getValue(true);
         if (tagName!=null)
         {   // write start tag
             writer.startElement(tagName, comp);
-            if (hasFormatOption(vi, FORMAT_VALUE_STYLES, 
FORMAT_VALUE_STYLES_ATTRIBUTE))
-                styleClass = addDataValueStyle(vi, vi.getValue(true), 
styleClass);
+            if (!hasFormatOption(vi, FORMAT_NO_VALUE_STYLES))
+                styleClass = addDataValueStyle(vi, value, styleClass);
             if (StringUtils.isNotEmpty(styleClass))
                 writer.writeAttribute("class", styleClass, null);
             if (StringUtils.isNotEmpty(tooltip))
@@ -266,7 +273,7 @@ public abstract class InputControl
                 writer.writeAttribute("style", style, null);
         }
         // render Value
-        renderValue(vi, writer);
+        renderValue(value, vi, writer);
         // has tag?
         if (tagName!=null)
         {   // write end tag
@@ -280,10 +287,10 @@ public abstract class InputControl
      * @param writer the output writer
      * @throws IOException from ResponseWriter
      */
-    public void renderValue(ValueInfo vi, ResponseWriter writer)
+    public void renderValue(Object value, ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-        String text = formatValue(vi);
+        String text = formatValue(value, vi);
         writer.append((StringUtils.isEmpty(text) ? HTML_EXPR_NBSP : text));
     }
 
@@ -605,7 +612,7 @@ public abstract class InputControl
 
     protected void setInputStyleClass(UIInput input, String cssStyleClass)
     {
-        input.getAttributes().put("styleClass", cssStyleClass);
+        input.getAttributes().put(InputControl.CSS_STYLE_CLASS, cssStyleClass);
     }
 
     protected void copyAttributes(UIComponent parent, InputInfo ii, UIInput 
input, String additonalStyle)
@@ -685,7 +692,7 @@ public abstract class InputControl
     
     public void addRemoveStyle(UIInput input, String styleName, boolean 
setStyle)
     {
-        String styleClasses = 
StringUtils.toString(input.getAttributes().get("styleClass"), "");
+        String styleClasses = 
StringUtils.toString(input.getAttributes().get(InputControl.CSS_STYLE_CLASS), 
"");
         boolean hasStyle = TagStyleClass.existsIn(styleClasses, styleName);
         if (setStyle == hasStyle)
             return; // Nothing to do
@@ -776,12 +783,13 @@ public abstract class InputControl
      * Returns the value formated as a string
      * This is a shortcut for formatString(vi.getValue(), vi)
      * Derived classes may override formatString
-     */
+     
     protected final String formatValue(ValueInfo vi)
     {
         // boolean hasError = ((vi instanceof InputInfo) && 
!((InputInfo)vi).isValid()); 
         return formatValue(vi.getValue(true), vi);
     }
+    */
 
     /**
      * escapes a String for html
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 3617cab9..ff045d8c 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
@@ -67,10 +67,9 @@ public class RadioInputControl extends InputControl
 
     /* Value */
     @Override
-    public void renderValue(ValueInfo vi, ResponseWriter writer)
+    public void renderValue(Object value, ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-        Object value = vi.getValue(true);
         String style = 
vi.getStyleClass(TagStyleClass.RADIO.append(TagStyleClass.INPUT_DIS.get()));
         writer.startElement(HTML_TAG_DIV, null);
         writer.writeAttribute(HTML_ATTR_CLASS, style, null);
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 430c7d0e..300f1fe0 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
@@ -127,7 +127,7 @@ public class TextInputControl extends InputControl
         HtmlInputText input = (HtmlInputText) comp;
         if (ii.isInsideUIData())
         {   // always reset the style class inside UIData
-            String tagStyle = 
StringUtils.toString(ii.getAttribute("styleClass"), null);
+            String tagStyle = 
StringUtils.toString(ii.getAttribute(InputControl.CSS_STYLE_CLASS), null);
             String cssStyle = getInputStyleClass(ii, tagStyle);
             input.setStyleClass(cssStyle);
             /*
@@ -170,7 +170,7 @@ public class TextInputControl extends InputControl
         String dataTypeClass = 
TagEncodingHelper.getDataTypeClass(ii.getColumn().getDataType()); 
         String styleClass    = TagEncodingHelper.getTagStyleClass(tagStyle, 
dataTypeClass, null, null);
         */
-        span.getAttributes().put("styleClass", tagStyle);
+        span.getAttributes().put(InputControl.CSS_STYLE_CLASS, tagStyle);
         span.getChildren().add(text);
         // done 
         return span;
@@ -354,10 +354,10 @@ public class TextInputControl extends InputControl
     // ------- render -------
 
     @Override
-    public void renderValue(ValueInfo vi, ResponseWriter writer)
+    public void renderValue(Object value, ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-        String text = formatValue(vi);
+        String text = formatValue(value, vi);
         if (StringUtils.isEmpty(text))
         { // nothing
             writer.append(HTML_EXPR_NBSP);
@@ -436,7 +436,6 @@ public class TextInputControl extends InputControl
             if (ml > 0)
                 return ml;
         }
-
         Column col = ii.getColumn();
         // cast to DBTableColumn 
         DataType type = col.getDataType();
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
index 9d080687..c140d5a5 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
@@ -227,7 +227,7 @@ public class TagEncodingHelper implements NamingContainer
             return value;
         }
     }
-
+    
     /**
      * ValueInfoImpl
      * Provides information necessary to render a data value (non editable) 
@@ -235,6 +235,8 @@ public class TagEncodingHelper implements NamingContainer
      */
     protected class ValueInfoImpl implements InputControl.ValueInfo
     {
+        private String format = null;
+                    
         public ValueInfoImpl(Column column, TextResolver resolver)
         {
             if (column==null)
@@ -267,22 +269,6 @@ public class TagEncodingHelper implements NamingContainer
             return getValueOptions();
         }
 
-        /*
-        @Override
-        public Object getNullValue()
-        {
-            // null value
-            Object attr = getTagAttributeValue("default");
-            if (attr != null)
-                return attr;
-            // Use Column default
-            if (hasColumn())
-                return column.getAttribute("default");
-            // not available
-            return null;
-        }
-        */
-
         @Override
         public String getStyleClass(String addlStyle)
         {
@@ -293,19 +279,19 @@ public class TagEncodingHelper implements NamingContainer
         @Override
         public String getFormat()
         {
-            // null value
-            String attr = getTagAttributeString("format");
-            if (attr != null)
-                return attr;
-            // Use Column default
-            if (hasColumn())
-            { // from column
-                Object format = column.getAttribute("format");
-                if (format != null)
-                    return format.toString();
+            if (format == null) 
+            {   // null value
+                format = getTagAttributeString("format");
+                // Use Column default
+                if (format==null && hasColumn())
+                { // from column
+                    format = 
StringUtils.toString(column.getAttribute("format"));
+                }
+                if (format==null)
+                    format = StringUtils.EMPTY;
             }
             // not available
-            return null;
+            return format;
         }
 
         @Override
@@ -743,7 +729,7 @@ public class TagEncodingHelper implements NamingContainer
         this.readOnly        = -1;
         this.valueRequired   = -1;
         this.optionsDetected = false;
-        this.options = null;
+        this.options         = null;
         /*
         this.valueInfo       = null;
         this.skipValidation  = false;
@@ -1573,8 +1559,9 @@ public class TagEncodingHelper implements NamingContainer
     
     public String getTagAttributeString(String name, String defValue)
     {
-        Object  v = getTagAttributeValue(name);
-        return (v!=null) ? StringUtils.toString(v) : defValue;
+        Object value = getTagAttributeValue(name);
+        String sval = StringUtils.nullIfEmpty(value);
+        return (defValue!=null ? StringUtils.coalesce(sval, defValue) : sval);
     }
 
     public String getTagAttributeString(String name)
@@ -1626,7 +1613,7 @@ public class TagEncodingHelper implements NamingContainer
     public void writeStyleClass(ResponseWriter writer)
         throws IOException
     {
-        String userStyle = getTagAttributeStringEx("styleClass");
+        String userStyle = 
getTagAttributeStringEx(InputControl.CSS_STYLE_CLASS);
         writeStyleClass(writer, this.cssStyleClass, userStyle);
     }
     
@@ -1933,7 +1920,7 @@ public class TagEncodingHelper implements NamingContainer
 
     public String getSimpleStyleClass()
     {
-        String userStyle = getTagAttributeStringEx("styleClass");
+        String userStyle = 
getTagAttributeStringEx(InputControl.CSS_STYLE_CLASS);
         return getSimpleStyleClass(userStyle);
     }
 
@@ -1946,7 +1933,7 @@ public class TagEncodingHelper implements NamingContainer
 
     public String getTagStyleClass(String typeClass, String addlStyle)
     {
-        String userStyle = getTagAttributeStringEx("styleClass");
+        String userStyle = 
getTagAttributeStringEx(InputControl.CSS_STYLE_CLASS);
         return getTagStyleClass(typeClass, addlStyle, userStyle);
     }
 
diff --git a/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java 
b/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java
index 9fa34069..42d2cf98 100644
--- a/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java
+++ b/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java
@@ -147,7 +147,7 @@ public class StringUtils
      */
     public static String coalesce(String preferred, String alternative)
     {
-        return isNotEmpty(preferred) ? preferred : alternative;        
+        return isEmpty(preferred) ? alternative : preferred;        
     }
 
     /**

Reply via email to