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 b0e0e926 EMPIREDB-439 InputTag: set auto component id according to
FormGridTag
b0e0e926 is described below
commit b0e0e9269af1275c467d47baf4b679c971f129dd
Author: Rainer Döbele <[email protected]>
AuthorDate: Sun Oct 20 13:14:57 2024 +0200
EMPIREDB-439
InputTag: set auto component id according to FormGridTag
---
.../empire/jakarta/components/ControlTag.java | 22 ++++++++++------------
.../apache/empire/jakarta/components/InputTag.java | 20 ++++++++++++++++++++
.../java/org/apache/empire/jakarta/pages/Page.java | 4 ++--
.../empire/jakarta/utils/TagEncodingHelper.java | 12 +++++++++---
.../apache/empire/jsf2/components/ControlTag.java | 22 ++++++++++------------
.../apache/empire/jsf2/components/InputTag.java | 20 ++++++++++++++++++++
.../java/org/apache/empire/jsf2/pages/Page.java | 4 ++--
.../empire/jsf2/utils/TagEncodingHelper.java | 12 +++++++++---
8 files changed, 82 insertions(+), 34 deletions(-)
diff --git
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/ControlTag.java
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/ControlTag.java
index f32cd6a5..4d87ed5f 100644
---
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/ControlTag.java
+++
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/ControlTag.java
@@ -310,20 +310,18 @@ public class ControlTag extends UIInput implements
NamingContainer
public void setParent(UIComponent parent)
{
super.setParent(parent);
- // check
+ // check whether already set
if (helper.hasComponentId())
return;
- if (this.renderInfo==null) {
- /*
- * Attention: Only works if FormGrid is a direct parent of the
Control.
- * Does not work, if other components are between the Control and
the FormGrid.
- */
- this.renderInfo=helper.getControlRenderInfo();
- if (this.renderInfo!=null &&
this.renderInfo.AUTO_CONTROL_ID!=null) {
- // Auto set component Id
- setId(this.renderInfo.AUTO_CONTROL_ID.toString());
- log.warn("Auto-Setting compontent id for control to {}",
this.getId());
- }
+ /*
+ * Attention: Only works if FormGrid is a direct parent of the Control.
+ * Does not work, if other components are between the Control and the
FormGrid.
+ */
+ this.renderInfo = helper.getControlRenderInfo();
+ if (this.renderInfo!=null && this.renderInfo.AUTO_CONTROL_ID!=null) {
+ // Auto set component Id
+ setId(this.renderInfo.AUTO_CONTROL_ID.toString());
+ log.debug("Auto-Setting compontent id for Control to {}",
this.getId());
}
}
diff --git
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/InputTag.java
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/InputTag.java
index e9a297b3..9502549b 100644
---
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/InputTag.java
+++
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/InputTag.java
@@ -23,6 +23,7 @@ import java.util.List;
import org.apache.empire.data.Column;
import org.apache.empire.jakarta.controls.InputControl;
+import org.apache.empire.jakarta.utils.ControlRenderInfo;
import org.apache.empire.jakarta.utils.TagEncodingHelper;
import org.apache.empire.jakarta.utils.TagEncodingHelperFactory;
import org.apache.empire.jakarta.utils.TagStyleClass;
@@ -232,6 +233,25 @@ public class InputTag extends UIInput implements
NamingContainer
super.setId(id);
}
+ @Override
+ public void setParent(UIComponent parent)
+ {
+ super.setParent(parent);
+ // check whether already set
+ if (helper.hasComponentId())
+ return;
+ /*
+ * Attention: Only works if FormGrid is a direct parent of the Control.
+ * Does not work, if other components are between the Control and the
FormGrid.
+ */
+ ControlRenderInfo renderInfo = helper.getControlRenderInfo();
+ if (renderInfo!=null && renderInfo.AUTO_CONTROL_ID!=null) {
+ // Auto set component Id
+ setId(renderInfo.AUTO_CONTROL_ID.toString());
+ log.debug("Auto-Setting compontent id for Input to {}",
this.getId());
+ }
+ }
+
@Override
public Object getValue()
{
diff --git
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/pages/Page.java
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/pages/Page.java
index f2e087bc..4810d53f 100644
---
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/pages/Page.java
+++
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/pages/Page.java
@@ -190,7 +190,7 @@ public abstract class Page // *Deprecated* implements
Serializable
{ // process action
try
{ log.debug("Processing action {} on page {}.", action,
getPageName());
- processAction(action, context);
+ executeAction(action, context);
} finally {
// Clear action
this.action = null;
@@ -215,7 +215,7 @@ public abstract class Page // *Deprecated* implements
Serializable
this.initialized = (context.getResponseComplete() ? (short)-1 : 1);
}
- protected void processAction(String action, FacesContext context)
+ protected void executeAction(String action, FacesContext context)
{
try
{ // Process action
diff --git
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/utils/TagEncodingHelper.java
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/utils/TagEncodingHelper.java
index 8f8e86f4..91628e3f 100644
---
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/utils/TagEncodingHelper.java
+++
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/utils/TagEncodingHelper.java
@@ -532,9 +532,7 @@ public class TagEncodingHelper implements NamingContainer
}
else if ((idx=id.indexOf(PH_COLUMN_SMART))>=0)
{ // column name only
- name = getColumnName();
- if (SMART_COLUMN_NAME_SET.contains(name))
- name= getColumnFullName();
+ name = getColumnSmartName();
}
else if ((idx=id.indexOf(PH_COLUMN_FULL))>=0)
{ // column full name including table
@@ -715,6 +713,14 @@ public class TagEncodingHelper implements NamingContainer
// No Entity
return column.getName();
}
+
+ public String getColumnSmartName()
+ {
+ String name = getColumnName();
+ if (SMART_COLUMN_NAME_SET.contains(name))
+ name= getColumnFullName();
+ return name;
+ }
public void setColumn(Column column)
{
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 3b60a1b0..f19b7d7c 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
@@ -310,20 +310,18 @@ public class ControlTag extends UIInput implements
NamingContainer
public void setParent(UIComponent parent)
{
super.setParent(parent);
- // check
+ // check whether already set
if (helper.hasComponentId())
return;
- if (this.renderInfo==null) {
- /*
- * Attention: Only works if FormGrid is a direct parent of the
Control.
- * Does not work, if other components are between the Control and
the FormGrid.
- */
- this.renderInfo=helper.getControlRenderInfo();
- if (this.renderInfo!=null &&
this.renderInfo.AUTO_CONTROL_ID!=null) {
- // Auto set component Id
- setId(this.renderInfo.AUTO_CONTROL_ID.toString());
- log.warn("Auto-Setting compontent id for control to {}",
this.getId());
- }
+ /*
+ * Attention: Only works if FormGrid is a direct parent of the Control.
+ * Does not work, if other components are between the Control and the
FormGrid.
+ */
+ this.renderInfo = helper.getControlRenderInfo();
+ if (this.renderInfo!=null && this.renderInfo.AUTO_CONTROL_ID!=null) {
+ // Auto set component Id
+ setId(this.renderInfo.AUTO_CONTROL_ID.toString());
+ log.debug("Auto-Setting compontent id for Control to {}",
this.getId());
}
}
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
index 20e481f4..960eabfe 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
@@ -34,6 +34,7 @@ import javax.faces.view.AttachedObjectHandler;
import org.apache.empire.data.Column;
import org.apache.empire.jsf2.controls.InputControl;
+import org.apache.empire.jsf2.utils.ControlRenderInfo;
import org.apache.empire.jsf2.utils.TagEncodingHelper;
import org.apache.empire.jsf2.utils.TagEncodingHelperFactory;
import org.apache.empire.jsf2.utils.TagStyleClass;
@@ -232,6 +233,25 @@ public class InputTag extends UIInput implements
NamingContainer
super.setId(id);
}
+ @Override
+ public void setParent(UIComponent parent)
+ {
+ super.setParent(parent);
+ // check whether already set
+ if (helper.hasComponentId())
+ return;
+ /*
+ * Attention: Only works if FormGrid is a direct parent of the Control.
+ * Does not work, if other components are between the Control and the
FormGrid.
+ */
+ ControlRenderInfo renderInfo = helper.getControlRenderInfo();
+ if (renderInfo!=null && renderInfo.AUTO_CONTROL_ID!=null) {
+ // Auto set component Id
+ setId(renderInfo.AUTO_CONTROL_ID.toString());
+ log.debug("Auto-Setting compontent id for Input to {}",
this.getId());
+ }
+ }
+
@Override
public Object getValue()
{
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/pages/Page.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/pages/Page.java
index c2a62ee8..31fa7cb7 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/pages/Page.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/pages/Page.java
@@ -190,7 +190,7 @@ public abstract class Page // *Deprecated* implements
Serializable
{ // process action
try
{ log.debug("Processing action {} on page {}.", action,
getPageName());
- processAction(action, context);
+ executeAction(action, context);
} finally {
// Clear action
this.action = null;
@@ -215,7 +215,7 @@ public abstract class Page // *Deprecated* implements
Serializable
this.initialized = (context.getResponseComplete() ? (short)-1 : 1);
}
- protected void processAction(String action, FacesContext context)
+ protected void executeAction(String action, FacesContext context)
{
try
{ // Process action
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 03a06d84..d7e370c4 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
@@ -532,9 +532,7 @@ public class TagEncodingHelper implements NamingContainer
}
else if ((idx=id.indexOf(PH_COLUMN_SMART))>=0)
{ // column name only
- name = getColumnName();
- if (SMART_COLUMN_NAME_SET.contains(name))
- name= getColumnFullName();
+ name = getColumnSmartName();
}
else if ((idx=id.indexOf(PH_COLUMN_FULL))>=0)
{ // column full name including table
@@ -715,6 +713,14 @@ public class TagEncodingHelper implements NamingContainer
// No Entity
return column.getName();
}
+
+ public String getColumnSmartName()
+ {
+ String name = getColumnName();
+ if (SMART_COLUMN_NAME_SET.contains(name))
+ name= getColumnFullName();
+ return name;
+ }
public void setColumn(Column column)
{