openwebbeans-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Laird Nelson <ljnel...@gmail.com>
Subject @Intercepted Bean<?> failure
Date Fri, 14 Dec 2018 19:08:25 GMT
Hello; before I file an issue I'd like to check the behavior I'm observing
with this list.  I've also put this on StackOverflow (
https://stackoverflow.com/questions/53771466/is-intercepted-bean-a-legal-type-and-qualifier-pair-to-inject
).

I am using the Narayana transaction CDI machinery (
https://github.com/jbosstm/narayana/tree/master/ArjunaJTA/cdi/classes/com/arjuna/ats/jta/cdi).
It works fine in a standalone CDI 2.0 application when Weld is the
implementation.  It fails in OpenWebBeans 2.0.8.

Specifically, the Narayana project includes several interceptors (
https://github.com/jbosstm/narayana/tree/master/ArjunaJTA/cdi/classes/com/arjuna/ats/jta/cdi/transactional).
The common base class they all share has this code (
https://github.com/jbosstm/narayana/blob/77a4ea35287cb2057b62b6d65e99efd96c55074a/ArjunaJTA/cdi/classes/com/arjuna/ats/jta/cdi/transactional/TransactionalInterceptorBase.java#L69-L71
):

@Inject
@Intercepted
private Bean<?> interceptedBean;

A standalone CDI application attempting to use a transactional method:

@Transactional(TxType.REQUIRED)
public void frobnicate() {
  // whatever
}

…fails with (ultimately):

Caused by: javax.enterprise.inject.UnsatisfiedResolutionException: Api type
[javax.enterprise.inject.spi.Bean] is not found with the qualifiers
Qualifiers:
[@javax.enterprise.inject.Intercepted(),@javax.inject.Named(value="interceptedBean")]
for injection into Field Injection Point, field name :  interceptedBean,
Bean Owner : [TransactionalInterceptorNotSupported,
WebBeansType:INTERCEPTOR, Name:null, API
Types:[com.arjuna.ats.jta.cdi.transactional.TransactionalInterceptorBase
[and so on]

Note the @Named(value="interceptedBean") qualifier.  I'm not sure why that
shows up as the Narayana extension does not add that qualifier and it is
not present in the interceptor.

I assume this is a bug in OpenWebBeans, yes?

Best,
Laird

Mime
View raw message