-
Bug
-
Resolution: Done
-
Major
-
1.0.0.Alpha4
-
None
suppose i have an interface called BeanInterface, which is a local interface implemented a class called BeanImplementation.
then, in my test case, i have the following in ijected field:
@EJB(mappedName = "java:global/test/BeanImplementation/local")
private BeanInterface bean;
this will fail because the enricher does not bother looking at the annotation attributes. specifically, as can be seen in EJBInjectionEnricher.java line 102, the code does not pass the Field itself to the lookup method, only its name. the lookup method then proceeds to try several JNDI naming alternatives (line 137).
this means that production classes are forced to adhere to the naming conventions used by arquillian code or tests fail.
the code in question could take into account the mappedName and/or lookup attributes of @EJB to allow developers to specify the JNDI name for the lookup.
- duplicates
-
ARQ-167 Support @EJB.mappedName for TestClass injection
- Closed