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 3192c19  EMPIREDB-309 Remove NamingContainer Interface from LabelTag
3192c19 is described below

commit 3192c1912a7806ac3e2a0227f134bdcb4b242280
Author: Rainer Döbele <[email protected]>
AuthorDate: Mon Sep 30 12:01:47 2019 +0200

    EMPIREDB-309
    Remove NamingContainer Interface from LabelTag
---
 .../org/apache/empire/jsf2/components/LabelTag.java |  3 +--
 .../apache/empire/jsf2/utils/TagEncodingHelper.java | 21 ++++++++++++++++-----
 2 files changed, 17 insertions(+), 7 deletions(-)

diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LabelTag.java 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LabelTag.java
index 4733a14..c14c7db 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LabelTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/LabelTag.java
@@ -20,7 +20,6 @@ package org.apache.empire.jsf2.components;
 
 import java.io.IOException;
 
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIOutput;
 import javax.faces.component.html.HtmlOutputLabel;
 import javax.faces.component.visit.VisitCallback;
@@ -34,7 +33,7 @@ import org.apache.empire.jsf2.utils.TagEncodingHelperFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class LabelTag extends UIOutput implements NamingContainer
+public class LabelTag extends UIOutput // implements NamingContainer
 {
     // Logger
     private static final Logger log = LoggerFactory.getLogger(LabelTag.class);
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 312e445..b76f0d7 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
@@ -66,6 +66,7 @@ import org.apache.empire.jsf2.app.TextResolver;
 import org.apache.empire.jsf2.app.WebApplication;
 import org.apache.empire.jsf2.components.ControlTag;
 import org.apache.empire.jsf2.components.InputTag;
+import org.apache.empire.jsf2.components.LabelTag;
 import org.apache.empire.jsf2.components.LinkTag;
 import org.apache.empire.jsf2.components.RecordTag;
 import org.apache.empire.jsf2.controls.InputControl;
@@ -339,6 +340,9 @@ public class TagEncodingHelper implements NamingContainer
         {   // Check Record
             if (isRecordReadOnly())
                 return true;
+            // Check tag
+            if (!(component instanceof UIInput))
+                return true;
             // Check Record
             if ((getRecord() instanceof Record))
             { // Ask Record
@@ -761,9 +765,6 @@ public class TagEncodingHelper implements NamingContainer
 
     public boolean isRecordReadOnly()
     {
-        // Check tag
-        if (!(component instanceof UIInput))
-            return true;
         // check attribute
         Object val = getTagAttributeValue("readonly");
         if (val != null && ObjectUtils.getBoolean(val))
@@ -1344,8 +1345,18 @@ public class TagEncodingHelper implements NamingContainer
                     log.warn("Input component {} not found for label {}.", 
forInput, getColumn().getName());
                 }                
             }
-            else
-            {   // set readonly
+            else if (component instanceof LabelTag)
+            {   // for LabelTag
+                forInput = this.getColumnName();
+                // readOnly
+                Object val = getAttributeValueEx("readOnly");
+                if (val!=null)
+                    readOnly = ObjectUtils.getBoolean(val);
+                else 
+                    readOnly = this.isReadOnly();
+            }
+            else 
+            {   // for ControlTag
                 readOnly = this.isReadOnly();
             }
         }

Reply via email to