MYFACES-4580: Quarkus ClientWindowScopeContextualStorageHolder (#543)

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 e9053c9..186f46d 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
@@ -72,6 +72,7 @@
 import org.apache.myfaces.cdi.FacesApplicationArtifactHolder;
 import org.apache.myfaces.cdi.FacesArtifactProducer;
 import org.apache.myfaces.cdi.FacesScoped;
+import org.apache.myfaces.cdi.clientwindow.ClientWindowScopeContextualStorageHolder;
 import org.apache.myfaces.cdi.config.FacesConfigBeanHolder;
 import org.apache.myfaces.cdi.model.FacesDataModelManager;
 import org.apache.myfaces.cdi.util.BeanEntry;
@@ -165,6 +166,7 @@ class MyFacesProcessor
             WebsocketChannelTokenBuilder.class,
             WebsocketSessionManager.class,
             WebsocketScopeManager.class,
+            ClientWindowScopeContextualStorageHolder.class,
             FlowScopeContextualStorageHolder.class
     };
 
@@ -507,7 +509,6 @@ void registerForMethodReflection(MyFacesRecorder recorder, BuildProducer<Reflect
         List<Class<?>> classes = new ArrayList<>();
 
         classNames.add("jakarta.faces._FactoryFinderProviderFactory");
-        classNames.add("jakarta.faces.context._MyFacesExternalContextHelper");
         classNames.addAll(collectImplementors(combinedIndex, java.util.Collection.class.getName()));
         classNames.addAll(collectImplementors(combinedIndex, java.time.temporal.TemporalAccessor.class.getName()));
         classNames.addAll(collectSubclasses(combinedIndex, java.lang.Number.class.getName()));
@@ -553,6 +554,15 @@ void registerForMethodReflection(MyFacesRecorder recorder, BuildProducer<Reflect
                 new ReflectiveClassBuildItem(true, false, classes.toArray(new Class[classes.size()])));
     }
 
+    @BuildStep
+    @Record(ExecutionTime.STATIC_INIT)
+    void registerForFieldReflection(MyFacesRecorder recorder,
+                               BuildProducer<ReflectiveClassBuildItem> reflectiveClass)
+    {
+        reflectiveClass.produce(new ReflectiveClassBuildItem(true, true,
+                "jakarta.faces.context._MyFacesExternalContextHelper"));
+    }
+
     @BuildStep(onlyIf = NativeOrNativeSourcesBuild.class)
     void registerErrorPageClassesForReflection(BuildProducer<ReflectiveClassBuildItem> reflectiveClass,
             CombinedIndexBuildItem combinedIndex)