[
https://issues.apache.org/jira/browse/DELTASPIKE-736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14159067#comment-14159067
]
Gerhard Petracek commented on DELTASPIKE-736:
---------------------------------------------
yes - but it's just a wrapper which delegates to the instance created by owb
and if owb is using an instanceof check, we should improve/change the approach.
if it isn't possible right now, cdi2 has to address interceptors as well as
wrappers for such custom parts in a better way (since the setter is provided by
the spi and therefore wrappers are self-evident).
@roland:
for such cases you can use org.apache.deltaspike.testcontrol.spi.mock.MockFilter
> MockAwareInjectionTargetWrapper breaks interceptors in unit tests
> -----------------------------------------------------------------
>
> Key: DELTASPIKE-736
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-736
> Project: DeltaSpike
> Issue Type: Bug
> Components: TestControl
> Affects Versions: 1.0.3
> Environment: OpenWebBeans 1.2.6
> Reporter: Ronald Steininger
>
> The automatic usage of MockAwareInjectionTargetWrapper breaks method-level
> interceptors under OWB:
> org.apache.webbeans.config.BeansDeployer#validate creates the interceptor
> stack of all beans while validating the deployment (Line 474). This code
> depends on owbBean.getProducer() returning an AbstractProducer (Line 462).
> TestControl replaces that AbstractProducer in some circumstances with an
> instance of MockAwareInjectionTargetWrapper, completely deactivating the
> if-branch which would active the interceptors.
> It seems that, depending where the interceptor binding is defined on the
> intercepted bean, interceptors work or don't work: using the annotation on
> the class level results in getProducer returning a AbstractProducer ->
> interceptors work. Defining interceptors only on methods shows the broken
> behaviour described here.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)