[jboss-jira] [JBoss JIRA] (WFLY-2722) @EJB injection in interceptor class and in target class result in injection of instances of two different classes
Matus Abaffy (JIRA)
issues at jboss.org
Tue Jan 14 05:15:34 EST 2014
[ https://issues.jboss.org/browse/WFLY-2722?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12935551#comment-12935551 ]
Matus Abaffy commented on WFLY-2722:
------------------------------------
Thanks for your explanation.
Using InitialContext.doLookup("java:module/Animal"); in BarInterceptor returns the expected instance of Cat (assuming @Stateful(name = "Animal") annotation on Dog and Cat) so there is no need to use @EJB there.
> @EJB injection in interceptor class and in target class result in injection of instances of two different classes
> -----------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-2722
> URL: https://issues.jboss.org/browse/WFLY-2722
> Project: WildFly
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: CDI / Weld
> Affects Versions: 8.0.0.CR1
> Reporter: Matus Abaffy
> Assignee: Jozef Hartinger
>
> Interceptors spec, 2.2.1 - Interceptor Environment:
> bq. Interceptor class shares the enterprise naming context of its associated target class. (1)
> Assume the following scenario:
> Ear: test-ejb.jar, test1.war, test2.war
> test-ejb.jar: Animal, BarBinding
> test1.war: BarInterceptor, Dog
> test2.war: Bar, Cat
> Short description of the classes:
> {code}
> @Stateful public class Dog implements Animal {...}
> {code}
> {code}
> @Stateful public class Cat implements Animal {...}
> {code}
> {code}
> @BarBinding @Stateless
> public class Bar {
> @EJB
> Animal animal;
> }
> {code}
> {code}
> @BarBinding @Priority(1000) @Interceptor
> public class BarInterceptor {
> @EJB
> Animal animal;
> }
> {code}
> Bar gets injected an instance of Cat, whereas BarInterceptor gets injected an instance of Dog, which IMHO contradicts (1).
> Test case at: https://github.com/cdi-spec/cdi-tck/pull/38
> (InterceptorEnvironmentJNDITest, InterceptorEnvironmentJNDISessionBeanTest)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list