3 Replies Latest reply: Apr 20, 2012 3:40 AM by Dan Allen RSS

    JBoss AS BeanManager not found

    mcgin Newbie

      For some reason I cannot get dependency injection to work with Arquillian.  I've devised a very simple test just to see if injection is working and I'm getting "BeanManager not found" output in the server logs which presumably is the root of the NullPointerException.


      Relevant info attached below, I presume I'm just missing something very basic here!

       

       

       

      Test case:

      @RunWith(Arquillian.class)
      public class ServiceTest {
      private static final Logger logger = LoggerFactory.getLogger(ServiceTest.class);
          @Deployment
          public static Archive<?> createTestArchive() {
              return ShrinkWrap.create(WebArchive.class, "test.war")
                      .addAsManifestResource("test-jboss-deployment-structure.xml","jboss-deployment-structure.xml")
                      .addAsManifestResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml"))
                      .addClass(Injectable.class)
                      ;
      
      
          }
      
      
          @Inject
          private Injectable injectable;
      
          @Test
          public void testCanPersistLocationObject() {
              logger.info("RUNNING THE TEST");
              logger.info(injectable.injectMe()); //This is throwing a null pointer exception
          }
      
      }
      

       

       

       

      Injectable.java

       

      @Stateless
      public class Injectable {
          public String injectMe() {
              return "I was injected";
          }
      }
      
      

       

       

      Arquillian Dependencies

                      <dependency>
                          <groupId>org.jboss.spec</groupId>
                          <artifactId>jboss-javaee-6.0</artifactId>
                          <version>1.0.0.Final</version>
                          <type>pom</type>
                          <scope>provided</scope>
                      </dependency>
                      <dependency>
                          <groupId>org.jboss.as</groupId>
                          <artifactId>jboss-as-arquillian-container-remote</artifactId>
                          <version>${jbossas.version}</version>
                          <scope>test</scope>
                      </dependency>
                      <dependency>
                          <groupId>org.jboss.arquillian.junit</groupId>
                          <artifactId>arquillian-junit-container</artifactId>
                          <version>${arquillian.version}</version>
                          <scope>test</scope>
                      </dependency>

       

       

       

      Server logs:

       

       

      17:56:41,300 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) Starting deployment of "test.war"
      17:56:41,353 INFO  [org.jboss.as.jpa] (MSC service thread 1-1) added javax.persistence.api dependency to test.war
      17:56:41,363 INFO  [org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor] (MSC service thread 1-1) JNDI
      bindings for session bean named Injectable in deployment unit deployment "test.war" are as follows:
      
      
              java:global/test/Injectable!service.Injectable
              java:app/test/Injectable!service.Injectable
              java:module/Injectable!service.Injectable
              java:global/test/Injectable
              java:app/test/Injectable
              java:module/Injectable
      
      17:56:41,383 INFO  [org.jboss.as.arquillian] (MSC service thread 1-1) Arquillian deployment detected: ArquillianConfig[service=jb
      ss.arquillian.config."test.war",unit=test.war,tests=[service.ServiceTest]]
      17:56:41,395 INFO  [org.jboss.web] (MSC service thread 1-3) registering web context: /test
      17:56:41,405 INFO  [org.jboss.as.server.controller] (pool-1-thread-23) Deployed "test.war"
      17:56:41,610 INFO  [org.jboss.arquillian.testenricher.cdi.container.BeanManagerProducer] (RMI TCP Connection(42)-127.0.0.1) BeanM
      nager not found.
      17:56:41,617 INFO  [com.gamblerstools.bettingbot.service.BetbotServiceTest] (RMI TCP Connection(42)-127.0.0.1) RUNNING THE TEST
      17:56:41,621 ERROR [org.jboss.arquillian.protocol.jmx.JMXTestRunner] (RMI TCP Connection(42)-127.0.0.1) Failed: service.ServiceTest.testCanPersistLocationObject: java.lang.NullPointerException