Uploaded image for project: 'Application Server 7'
  1. Application Server 7
  2. AS7-4620

ServerSetupObserver should not assume a Deploy has happened before a UnDeploy is called

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 7.1.2.Final (EAP)
    • 7.1.1.Final
    • Test Suite
    • None

      Both in a context of the Arquillian Maven extension and the Arquillian JRebel extension, UnDeploy operations can be called on a container without a Deploy operation call within the same JVM run.

      Initialization of the deployed Map happens when a Deploy occurred:

      https://github.com/jbossas/jboss-as/blob/master/arquillian/common/src/main/java/org/jboss/as/arquillian/container/ServerSetupObserver.java#L40

      Which trigger a NullPointerException if a Undeploy is called without a Deploy:
      https://github.com/jbossas/jboss-as/blob/master/arquillian/common/src/main/java/org/jboss/as/arquillian/container/ServerSetupObserver.java#L126

      java.lang.NullPointerException
      	at org.jboss.as.arquillian.container.ServerSetupObserver.handleAfterUndeploy(ServerSetupObserver.java:119)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:616)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
      	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
      	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
      	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:115)
      	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
      	at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$4.call(ContainerDeployController.java:226)
      	at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$4.call(ContainerDeployController.java:185)
      	at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.executeOperation(ContainerDeployController.java:271)
      	at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.undeploy(ContainerDeployController.java:184)
      

            sdouglas1@redhat.com Stuart Douglas
            aslak@redhat.com Aslak Knutsen
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: