diff --git a/webbeans-impl/src/main/java/org/apache/webbeans/util/SpecializationUtil.java b/webbeans-impl/src/main/java/org/apache/webbeans/util/SpecializationUtil.java index 264c91795..c5bfd4b51 100644 --- a/webbeans-impl/src/main/java/org/apache/webbeans/util/SpecializationUtil.java +++ b/webbeans-impl/src/main/java/org/apache/webbeans/util/SpecializationUtil.java @@ -169,7 +169,18 @@ private void removeAllDisabledClasses(Map, BeansDeployer.ExtendedBeanAttributes> beanAttributeMap : beanAttributesPerBda.values()) { - beanAttributeMap.entrySet().removeIf(beanAttributesEntry -> disabledClasses.contains(beanAttributesEntry.getKey().getJavaClass())); + Set> toRemove = new HashSet<>(); + for (Map.Entry, BeansDeployer.ExtendedBeanAttributes> beanAttributesEntry : beanAttributeMap.entrySet()) + { + if (disabledClasses.contains(beanAttributesEntry.getKey().getJavaClass())) + { + toRemove.add(beanAttributesEntry.getKey()); + } + } + for (AnnotatedType annotatedType : toRemove) + { + beanAttributeMap.remove(annotatedType); + } } }