Hey Romain,

that was the missing piece of the puzzle and lets me step down in embarrassment 
for such an idiotic mistake. I've had the assumtion that for a maven surefire 
test, the beans.xml provided in src/main/resources/META-INF which IS obviously 
used, is enough, but after you pointed this out, I simply added another one 
under src/test/resources/META-INF and voilá, getBeans() returns a Bean that I 
can retrieve an instance from, that indeed will make interceptors work.

Thank you very much for your help,

Heiko

> -----Ursprüngliche Nachricht-----
> Von: Romain Manni-Bucau [mailto:[email protected]]
> Gesendet: Freitag, 7. Februar 2014 08:55
> An: [email protected]
> Betreff: Re: Interceptors not being called in JUnit-aware CDI environment
>
> =========================================================
> ======
>
> ATTENTION! This message contains suspicious URL(s) possibly redirecting to
> malicious content. Our security gateways target known problem URLs like
> freeweb or URL Shorteners that are being abused by spammers. Some
> examples would be groups.google.com or tinyurl.com. Please check the sender
> and hyperlinks in the e-mail accurately before clicking on a link. If this 
> email
> seems obviously bad to you please delete it.  More information is available on
> our website Information Security @ Daimler: http://intra.corpintra.net/intra-
> is-e/spam
>
> =========================================================
> ======
>
> ACHTUNG! Diese E-Mail enthält verdächtige URLs welche möglicherweise auf
> schädlichen Inhalt verweisen. Die Security Gateways prüfen auf bekannte
> Problem-URLs  wie zum Beispiel URL-Abkürzungen, die bevorzugt von
> Spammern mißbraucht werden (tinyurl.com, groups.google.com, ...). Bitte
> prüfen Sie den Absender und die URLs in dieser E-Mail gewissenhaft bevor sie
> die verknüpften Inhalte aufrufen. Bitte löschen Sie diese E-Mail, wenn Sie der
> Meinung sind, daß sich der Verdacht bestätigt. Weitere Informationen zu
> unerwünschter E-Mail / SPAM finden Sie auf den Seiten der
> Informationssicherheit bei Daimler unter: http://intra.corpintra.net/intra-is-
> d/spam
>
> =========================================================
> ======
>
>
> is you test class scanned by cdi? I mean did you provide a META-
> INF/beans.xml for tests?
> Romain Manni-Bucau
> Twitter: @rmannibucau
> Blog: http://rmannibucau.wordpress.com/
> LinkedIn: http://fr.linkedin.com/in/rmannibucau
> Github: https://github.com/rmannibucau
>
>
>
> 2014-02-07  <[email protected]>:
> > Hello Romain,
> >
> > thank you for your fast response. Yes I want to intercept the test itself.
> >
> > I've checked into various ways on how to actually create a bean, however
> nothing worked out. You mention to call beanManager.getXXX() but for my
> point that is not enough information.
> >
> > I tried to retrieve the beans of the test class via beanManager.getBeans() 
> > but
> regardless of what I try as annotation literals there (non, Any, etc.) nothing
> works, the list is always empty. What method exactly did you have in mind
> here?
> >
> > Thanks,
> >
> > Heiko
> >
> >> -----Ursprüngliche Nachricht-----
> >> Von: Romain Manni-Bucau [mailto:[email protected]]
> >> Gesendet: Freitag, 7. Februar 2014 08:26
> >> An: [email protected]
> >> Betreff: Re: Interceptors not being called in JUnit-aware CDI
> >> environment
> >>
> >>
> =========================================================
> >> ======
> >>
> >> ATTENTION! This message contains suspicious URL(s) possibly
> >> redirecting to malicious content. Our security gateways target known
> >> problem URLs like freeweb or URL Shorteners that are being abused by
> >> spammers. Some examples would be groups.google.com or tinyurl.com.
> >> Please check the sender and hyperlinks in the e-mail accurately
> >> before clicking on a link. If this email seems obviously bad to you
> >> please delete it.  More information is available on our website
> >> Information Security @ Daimler: http://intra.corpintra.net/intra-
> >> is-e/spam
> >>
> >>
> =========================================================
> >> ======
> >>
> >> ACHTUNG! Diese E-Mail enthält verdächtige URLs welche möglicherweise
> >> auf schädlichen Inhalt verweisen. Die Security Gateways prüfen auf
> >> bekannte Problem-URLs  wie zum Beispiel URL-Abkürzungen, die
> >> bevorzugt von Spammern mißbraucht werden (tinyurl.com,
> >> groups.google.com, ...). Bitte prüfen Sie den Absender und die URLs
> >> in dieser E-Mail gewissenhaft bevor sie die verknüpften Inhalte
> >> aufrufen. Bitte löschen Sie diese E-Mail, wenn Sie der Meinung sind,
> >> daß sich der Verdacht bestätigt. Weitere Informationen zu
> >> unerwünschter E-Mail / SPAM finden Sie auf den Seiten der
> >> Informationssicherheit bei Daimler unter:
> >> http://intra.corpintra.net/intra-is-
> >> d/spam
> >>
> >>
> =========================================================
> >> ======
> >>
> >>
> >> HI
> >>
> >> You want to intercept the test? so it means the runner needs to
> >> invoke "business" methods of the test class which is not the case by
> >> default (ie result shouldn't be built from a newInstance() but from a
> beanManager.getXXX()).
> >> Romain Manni-Bucau
> >> Twitter: @rmannibucau
> >> Blog: http://rmannibucau.wordpress.com/
> >> LinkedIn: http://fr.linkedin.com/in/rmannibucau
> >> Github: https://github.com/rmannibucau
> >>
> >>
> >>
> >> 2014-02-07  <[email protected]>:
> >> > Hello,
> >> >
> >> > I've been trying to start the CDI container during Junit-Testing as
> >> > described at the following page,
> >> >
> >> > http://struberg.wordpress.com/2012/03/27/unit-testing-strategies-fo
> >> > r-c
> >> > di-based-projects/
> >> >
> >> > though I'm using Junit 4 and implemented everything using a new
> >> > Runner (to
> >> annotate tests with @RunWith). I kind of got inspired by he CDIUnit
> >> project, but it works only with Weld and I want to use OpenWebBeans.
> >> > The major things like injection work perfectly, however, I
> >> > realized, that even
> >> though I implemented the following code to provided a CDI aware
> >> Test-Class, an interceptor annotation on a test method is completely
> >> ignored, thus the interceptors AroundInvoke annotated method is not called.
> >> >
> >> >     private <T> T createTest(final Class<T> testClass) throws Exception
> >> >     {
> >> >         final BeanManager beanManager =
> >> > cdiContainer.getBeanManager();
> >> >
> >> >         final CreationalContext<T> creationalContext =
> >> > beanManager.createCreationalContext(null);
> >> >
> >> >         final AnnotatedType<T> annotatedType =
> >> beanManager.createAnnotatedType(testClass);
> >> >         final InjectionTarget<T> injectionTarget =
> >> > beanManager.createInjectionTarget(annotatedType);
> >> >
> >> >         final T result = (T)
> >> > getTestClass().getOnlyConstructor().newInstance();
> >> >
> >> >         injectionTarget.inject(result, creationalContext);
> >> >
> >> >         return result;
> >> >     }
> >> >
> >> > Is this expected behaviour? I'm not so familiar with how
> >> > interceptors are really implemented, but I would have guest that
> >> > after providing a creational context and complete injection for the
> >> > test class, interceptor annotations should work too. The
> >> > interceptor itself is registered correctly. It is listed among all
> >> > interceptors when calling
> >> >
> >> > WebBeansContext.currentInstance().getInterceptorsManager().getCdiIn
> >> > ter
> >> > ceptors()
> >> >
> >> > however, a test annotated with the interceptor does not trigger
> >> > execution of
> >> the AroundInvoke-method.
> >> >
> >> > Would be great, if somebody has a thought or a hint on this.
> >> >
> >> > Thanks,
> >> >
> >> > Heiko
> >> >
> >> >
> >> > If you are not the addressee, please inform us immediately that you
> >> > have
> >> received this e-mail by mistake, and delete it. We thank you for your
> support.
> >> >
> >
> > If you are not the addressee, please inform us immediately that you have
> received this e-mail by mistake, and delete it. We thank you for your support.
> >

If you are not the addressee, please inform us immediately that you have 
received this e-mail by mistake, and delete it. We thank you for your support.

Reply via email to