Uploaded image for project: 'Thorntail'
  1. Thorntail
  2. THORN-1322

Swarm's Arquillian container doesn't enable the @EJB enricher

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 2017.6.0
    • Component/s: None
    • Labels:
      None

      Description

      Arquillian ships with a bunch of test instance "enrichers" for injecting objects to annotated fields. Among them are enrichers for Java EE annotations @Inject, @Resource and @EJB. These enrichers are enabled only if the respective annotation (or some other identifying class) is "present on the classpath". Which, for in-container tests, means visible from the classloader that loaded Arquillian. In Swarm's case, that's the module classloader for module org.jboss.arquillian. This module is defined by Swarm itself.

      This module currently exports javax.annotation.api, which contains @Resource, and javax.enterprise.api, which contains @Inject (and the BeanManager). For the @EJB enricher to work, an export of javax.ejb.api is needed.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                lthon Ladislav Thon
                Reporter:
                lthon Ladislav Thon
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: