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 63ecd504 EMPIREDB-431 FacesUtils: getMessage() check for 
Message-key-Indicator
63ecd504 is described below

commit 63ecd504ec54eff85c6bc9f6be79bb9932635b0a
Author: Rainer Döbele <[email protected]>
AuthorDate: Thu Oct 31 19:43:22 2024 +0100

    EMPIREDB-431
    FacesUtils: getMessage() check for Message-key-Indicator
---
 .../src/main/java/org/apache/empire/jsf2/app/FacesUtils.java        | 6 +++++-
 .../src/main/java/org/apache/empire/jsf2/components/ControlTag.java | 2 ++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/app/FacesUtils.java 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/app/FacesUtils.java
index b3f27d8e..f5b89fee 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/app/FacesUtils.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/app/FacesUtils.java
@@ -41,6 +41,7 @@ import org.apache.empire.commons.StringUtils;
 import org.apache.empire.data.Column;
 import org.apache.empire.exceptions.EmpireException;
 import org.apache.empire.exceptions.InternalException;
+import org.apache.empire.exceptions.InvalidArgumentException;
 import org.apache.empire.exceptions.ItemNotFoundException;
 import org.apache.empire.jsf2.impl.FacesImplementation;
 import org.apache.empire.jsf2.pages.Page;
@@ -400,7 +401,10 @@ public class FacesUtils
     
     public static String getMessage(final FacesContext fc, String key)
     {
-        return getTextResolver(fc).resolveKey(key);
+        if (StringUtils.isEmpty(key))
+            throw new InvalidArgumentException("key", key);
+        TextResolver tr = getTextResolver(fc); 
+        return (key.startsWith(TextResolver.MSG_KEY_INDICATOR) ? 
tr.resolveText(key) : tr.resolveKey(key));
     }
     
     public static String getMessage(String messageKey)
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 ece7a01c..5b48b4af 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
@@ -835,6 +835,8 @@ public class ControlTag extends UIInput implements 
NamingContainer
         setValue(null);
         setLocalValueSet(false);
         // Post update
+        if (getChildCount() <= 1)
+            return; // should never come here
         ControlSeparatorComponent inputSepTag = (ControlSeparatorComponent) 
getChildren().get(1);
         this.control.postUpdateModel(inputSepTag, this.inpInfo, context);
     }

Reply via email to