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 723e8678 EMPIREDB-431 ValueTag: Check format attribute "noescape" when 
rendering values
723e8678 is described below

commit 723e8678fa6fe3886859e740a2f9023dec523e84
Author: Rainer Döbele <[email protected]>
AuthorDate: Tue Jan 28 10:46:19 2025 +0100

    EMPIREDB-431
    ValueTag: Check format attribute "noescape" when rendering values
---
 .../java/org/apache/empire/jakarta/controls/InputControl.java     | 8 ++++----
 .../main/java/org/apache/empire/jsf2/controls/InputControl.java   | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git 
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/controls/InputControl.java
 
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/controls/InputControl.java
index 3d06e286..b2f9681f 100644
--- 
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/controls/InputControl.java
+++ 
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/controls/InputControl.java
@@ -253,7 +253,7 @@ public abstract class InputControl
     public String formatValue(Object value, ValueInfo vi, boolean escapeHtml)
     {
         String s = formatValue(value, vi);
-        if (escapeHtml)
+        if (escapeHtml && s!=null && s.length()!=0)
             s = HtmlUtils.getInstance().escapeText(s);
         return s;
     }
@@ -307,9 +307,9 @@ public abstract class InputControl
     public void renderValue(Object value, ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-        // do we need this at all:
-        // boolean escapeHtml = !hasFormatOption(vi, "noencode"); 
-        String text = formatValue(value, vi, true);
+        // check if html needs to be escaped
+        boolean escapeHtml = !hasFormatOption(vi, "noescape"); 
+        String text = formatValue(value, vi, escapeHtml);
         writer.append((StringUtils.isEmpty(text) ? HTML_EXPR_NBSP : text));
     }
 
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 5cd50d1b..95f7ec2a 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
@@ -253,7 +253,7 @@ public abstract class InputControl
     public String formatValue(Object value, ValueInfo vi, boolean escapeHtml)
     {
         String s = formatValue(value, vi);
-        if (escapeHtml)
+        if (escapeHtml && s!=null && s.length()!=0)
             s = HtmlUtils.getInstance().escapeText(s);
         return s;
     }
@@ -307,9 +307,9 @@ public abstract class InputControl
     public void renderValue(Object value, ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-        // do we need this at all:
-        // boolean escapeHtml = !hasFormatOption(vi, "noencode"); 
-        String text = formatValue(value, vi, true);
+        // check if html needs to be escaped
+        boolean escapeHtml = !hasFormatOption(vi, "noescape"); 
+        String text = formatValue(value, vi, escapeHtml);
         writer.append((StringUtils.isEmpty(text) ? HTML_EXPR_NBSP : text));
     }
 

Reply via email to