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)