Gerhard Petracek created OWB-929:
------------------------------------
Summary: implicit filter in InstanceImpl#iterator
Key: OWB-929
URL: https://issues.apache.org/jira/browse/OWB-929
Project: OpenWebBeans
Issue Type: Bug
Components: Injection and Lookup
Affects Versions: 1.2.1, 1.1.8
Reporter: Gerhard Petracek
Fix For: 1.1.9, 1.2.2, 2.0.0
if there are e.g. 3 managed-beans implementing the same interface (2 classes
with custom qualifiers and 1 producer-method), a dyn. usage via
javax.enterprise.inject.Instance#iterator (+ @Any) can result in 2
contextual-instances (instead of 3). it happens if the producer-method is used
to select one of the other two beans and expose it with a different qualifier -
e.g.:
public class DefaultSelector {
@Produces
@Default
@Dependent
protected MyInterface selectDefault(
@Qualifier1 MyInterface bean1,
@Qualifier2 MyInterface bean2) {
if (/*...*/) {
return bean1;
return bean2;
}
}
reason:
InstanceImpl#iterator is using a HashSet to collect the contextual-instances.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)