-
Sub-task
-
Resolution: Fixed
-
L3 - Default
-
None
-
None
AC
- Solution ideas are investigated how to mark the DefaultContextAssociationManager$RequestScopedAssociation bean from engine-cdi as an unremovable bean in a more robust way
- The best idea is implemented
Hints
Currently, the name of the bean is partially hardcoded:
@BuildStep protected void unremovableBeans(BuildProducer<UnremovableBeanBuildItem> unremovableBeansProducer) { unremovableBeansProducer.produce( UnremovableBeanBuildItem.beanTypes( DotName.createSimple(DefaultContextAssociationManager.class.getName() + "$RequestScopedAssociation"))); }
Solution idea
Move DefaultContextAssociationManager$RequestScopedAssociation and DefaultContextAssociationManager$ScopedAssociation to dedicated classes. Like this, we can reference the RequestScopedAssociation directly. DefaultContextAssociationManager is private API so we can change the class structure. Creating dedicated classes does not have any impact behaviorally. For consistency reasons, let's also move DefaultContextAssociationManager$ConversationScopedAssociation to a dedicated class.