You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by hn...@apache.org on 2023/08/03 14:54:30 UTC

[myfaces-tobago] 05/06: feature(jakarta10): open-liberty

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

hnoeth pushed a commit to branch JakartaEE10
in repository https://gitbox.apache.org/repos/asf/myfaces-tobago.git

commit 5811ffbb81e6712987abf7ff46a5481ac9c87738
Author: Henning Noeth <hn...@apache.org>
AuthorDate: Tue Aug 1 13:04:52 2023 +0200

    feature(jakarta10): open-liberty
    
    * Tobago runs in open-liberty
    ** fix readme
    ** adjust server.xml; use jakartaee-10.0 feature
    * workaround for NPE in MyFaces UISelectOne.processValidators()
    
    Issue: TOBAGO-2094
---
 README.md                                               |  2 +-
 .../internal/component/AbstractUISelectOneRadio.java    | 17 +++++++++++++++++
 .../src/test/liberty/config/server.xml                  |  2 +-
 3 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index c9f896d607..c23a371054 100644
--- a/README.md
+++ b/README.md
@@ -87,7 +87,7 @@ mvn -f tobago-example/tobago-example-demo/pom.xml clean package jetty:run -Pjett
 mvn -f tobago-example/tobago-example-demo/pom.xml clean package -Ptomee tomee:run
 ```
 
-**Open Liberty **
+**Open Liberty**
 ```shell
 mvn -f tobago-example/tobago-example-demo/pom.xml clean -Pliberty liberty:run
 ```
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java
index 1f712a06d2..eec72ba91e 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java
@@ -41,4 +41,21 @@ public abstract class AbstractUISelectOneRadio extends AbstractUISelectOneBase i
   public AbstractUISelectReference getRenderRangeReference() {
     return renderRangeReference;
   }
+
+  /**
+   * This fixes an NPE with MyFaces 4.0.1 #{jakarta.faces.component.UISelectOne.processValidators} where the group is
+   * "null" and an .equals() is called.
+   * todo: remove this method, if the bug is fixed in MyFaces
+   *
+   * @return never null; either the group name or an empty string
+   */
+  @Override
+  public String getGroup() {
+    final String group = super.getGroup();
+    if (group != null) {
+      return group;
+    } else {
+      return "";
+    }
+  }
 }
diff --git a/tobago-example/tobago-example-demo/src/test/liberty/config/server.xml b/tobago-example/tobago-example-demo/src/test/liberty/config/server.xml
index 05c9da64ee..4fba924877 100644
--- a/tobago-example/tobago-example-demo/src/test/liberty/config/server.xml
+++ b/tobago-example/tobago-example-demo/src/test/liberty/config/server.xml
@@ -16,7 +16,7 @@
 -->
 <server>
   <featureManager>
-    <feature>jakartaee-9.1</feature>
+    <feature>jakartaee-10.0</feature>
   </featureManager>
 
   <webApplication contextRoot="/" location="tobago-example-demo.war" type="war">