You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by me...@apache.org on 2023/02/21 13:17:17 UTC

[myfaces] branch main updated: MYFACES-4589: Quarkus classes registered for reflection (#529)

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

melloware pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/myfaces.git


The following commit(s) were added to refs/heads/main by this push:
     new eaa4e8091 MYFACES-4589: Quarkus classes registered for reflection (#529)
eaa4e8091 is described below

commit eaa4e8091d086a0c5eaf65b80267d582a2e51a3f
Author: Melloware <me...@gmail.com>
AuthorDate: Tue Feb 21 08:17:12 2023 -0500

    MYFACES-4589: Quarkus classes registered for reflection (#529)
    
    * MYFACES-4589: Quarkus classes registered for reflection
    
    * Also collect StateHolder
    
    * Use Classes not Strings, add all XPath classes
---
 .../quarkus/deployment/MyFacesProcessor.java       | 58 ++++++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/extensions/quarkus/deployment/src/main/java/org/apache/myfaces/core/extensions/quarkus/deployment/MyFacesProcessor.java b/extensions/quarkus/deployment/src/main/java/org/apache/myfaces/core/extensions/quarkus/deployment/MyFacesProcessor.java
index 56331f7a9..d70e5c4ba 100644
--- a/extensions/quarkus/deployment/src/main/java/org/apache/myfaces/core/extensions/quarkus/deployment/MyFacesProcessor.java
+++ b/extensions/quarkus/deployment/src/main/java/org/apache/myfaces/core/extensions/quarkus/deployment/MyFacesProcessor.java
@@ -94,6 +94,7 @@ import jakarta.enterprise.inject.Produces;
 import jakarta.faces.FactoryFinder;
 import jakarta.faces.application.Application;
 import jakarta.faces.component.UIComponent;
+import jakarta.faces.component.StateHolder;
 import jakarta.faces.component.behavior.Behavior;
 import jakarta.faces.context.FacesContext;
 import jakarta.faces.convert.Converter;
@@ -417,11 +418,48 @@ class MyFacesProcessor
         classNames.addAll(collectSubclasses(combinedIndex, SystemEvent.class.getName()));
         classNames.addAll(collectSubclasses(combinedIndex, FacesContext.class.getName()));
         classNames.addAll(collectSubclasses(combinedIndex, Application.class.getName()));
+        classNames.addAll(collectImplementors(combinedIndex, StateHolder.class.getName()));
 
         // Web.xml parsing
         classNames.addAll(collectSubclasses(combinedIndex, DocumentBuilderFactory.class.getName()));
         classNames.add("com.sun.org.apache.xpath.internal.functions.FuncLocalPart");
         classNames.add("com.sun.org.apache.xpath.internal.functions.FuncNot");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncBoolean");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncCeiling");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncConcat");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncContains");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncCount");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncCurrent");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncDoclocation");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncExtElementAvailable");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncExtFunction");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncExtFunctionAvailable");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncFalse");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncFloor");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncGenerateId");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncHere");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncId");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncLang");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncLast");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncLocalPart");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncNamespace");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncNormalizeSpace");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncNot");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncNumber");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncPosition");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncQname");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncRound");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncStartsWith");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncString");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncStringLength");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncSubstring");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncSubstringAfter");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncSubstringBefore");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncSum");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncSystemProperty");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncTranslate");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncTrue");
+        classNames.add("com.sun.org.apache.xpath.internal.functions.FuncUnparsedEntityURI");
         classNames.add("com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl");
 
         for (String factory : FACTORIES)
@@ -462,6 +500,26 @@ class MyFacesProcessor
         List<Class<?>> classes = new ArrayList<>();
 
         classNames.add("jakarta.faces._FactoryFinderProviderFactory");
+        classNames.add(java.util.Set.class.getName());
+        classNames.add(java.util.List.class.getName());
+        classNames.add(java.util.Collection.class.getName());
+        classNames.add(java.util.Date.class.getName());
+        classNames.add(java.util.Calendar.class.getName());
+        classNames.add(java.time.LocalTime.class.getName());
+        classNames.add(java.time.LocalDate.class.getName());
+        classNames.add(java.time.LocalDateTime.class.getName());
+        classNames.add(java.time.OffsetDateTime.class.getName());
+        classNames.add(java.time.ZonedDateTime.class.getName());
+        classNames.add(java.math.BigDecimal.class.getName());
+        classNames.add(java.math.BigInteger.class.getName());
+        classNames.add(java.lang.Iterable.class.getName());
+        classNames.add(java.lang.Throwable.class.getName());
+        classNames.add(java.lang.Integer.class.getName());
+        classNames.add(java.lang.Long.class.getName());
+        classNames.add(java.lang.Byte.class.getName());
+        classNames.add(java.lang.Double.class.getName());
+        classNames.add(java.lang.String.class.getName());
+        classNames.add(java.lang.Number.class.getName());
 
         classNames.addAll(collectSubclasses(combinedIndex, TagHandler.class.getName()));
         classNames.addAll(collectSubclasses(combinedIndex, ConverterHandler.class.getName()));