Uploaded image for project: 'Arquillian'
  1. Arquillian
  2. ARQ-621

openshift container - unable to deploy zip assets

    XMLWordPrintable

Details

    Description

      I am using Arquillian Ajocado + Drone for running functional tests on sample applications. I use various arquillian container plugins including openshift-express. Since an entire sample app is used for the functional tests, I use a deployment method similar to this one:

      @Deployment(testable = false)
      public static WebArchive createDeployment() {
          return ShrinkWrap.create(ZipImporter.class, ARCHIVE_NAME).importFrom(new File(BUILD_DIRECTORY + '/' + ARCHIVE_NAME))
                  .as(WebArchive.class);
      }
      

      However, it seems that the openshift-express plugin tries to examing the content of the archive which is probably not possible to do with the zip file. As a result, my tests fail with the following exception:

      java.lang.IllegalArgumentException: Found content does not contain a Archive, org.jboss.shrinkwrap.impl.base.asset.ZipFileEntryAsset@552a66ea
              at org.jboss.shrinkwrap.impl.base.ArchiveBase.getAsType(ArchiveBase.java:239)
              at org.jboss.shrinkwrap.impl.base.ArchiveBase.getAsType(ArchiveBase.java:208)
              at org.jboss.shrinkwrap.impl.base.container.ContainerBase.getAsType(ContainerBase.java:376)
              at org.jboss.arquillian.container.openshift.express.archive.ArchiveUtil.getDefinedClasses(ArchiveUtil.java:144)
              at org.jboss.arquillian.container.openshift.express.archive.ArchiveUtil.getDefinedClassesOf(ArchiveUtil.java:97)
              at org.jboss.arquillian.container.openshift.express.ServletUtils.getServletNames(ServletUtils.java:68)
              at org.jboss.arquillian.container.openshift.express.ProtocolMetaDataParser.extractWebContext(ProtocolMetaDataParser.java:99)
              at org.jboss.arquillian.container.openshift.express.ProtocolMetaDataParser.extractWebArchiveContexts(ProtocolMetaDataParser.java:87)
              at org.jboss.arquillian.container.openshift.express.ProtocolMetaDataParser.parse(ProtocolMetaDataParser.java:71)
              at org.jboss.arquillian.container.openshift.express.OpenShiftExpressContainer.deploy(OpenShiftExpressContainer.java:190)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$3.call(ContainerDeployController.java:148)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$3.call(ContainerDeployController.java:115)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.executeOperation(ContainerDeployController.java:258)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.deploy(ContainerDeployController.java:114)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              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.container.impl.client.ContainerDeploymentContextHandler.createDeploymentContext(ContainerDeploymentContextHandler.java:78)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.container.impl.client.ContainerDeploymentContextHandler.createContainerContext(ContainerDeploymentContextHandler.java:57)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.container.impl.client.container.DeploymentExceptionHandler.verifyExpectedExceptionDuringDeploy(DeploymentExceptionHandler.java:50)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
              at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$1.perform(ContainerDeployController.java:86)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$1.perform(ContainerDeployController.java:79)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.forEachDeployment(ContainerDeployController.java:250)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.forEachManagedDeployment(ContainerDeployController.java:226)
              at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.deployManaged(ContainerDeployController.java:78)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              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:134)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
              at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
              at org.jboss.arquillian.container.test.impl.client.ContainerEventController.execute(ContainerEventController.java:97)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              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.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:68)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:54)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
              at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.beforeClass(EventTestRunnerAdaptor.java:80)
              at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:158)
              at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:290)
              at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:45)
              at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:175)
              at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
              at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:123)
              at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
              at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:123)
              at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:104)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:164)
              at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:110)
              at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:175)
              at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcessWhenForked(SurefireStarter.java:107)
              at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:68)
      org.jboss.seam.rest.examples.tasks.ftest.CategoryPageTest  Time elapsed: 0.003 sec  <<< ERROR!
      java.lang.NullPointerException
              at org.jboss.arquillian.drone.impl.DroneDestructor.destroyClassScopedDrone(DroneDestructor.java:82)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              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.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:68)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:54)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
              at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
              at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
              at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.afterClass(EventTestRunnerAdaptor.java:87)
              at org.jboss.arquillian.junit.Arquillian$3$1.evaluate(Arquillian.java:180)
              at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:290)
              at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:45)
              at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:175)
              at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
              at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:123)
              at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
              at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:123)
              at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:104)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:164)
              at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:110)
              at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:175)
              at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcessWhenForked(SurefireStarter.java:107)
              at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:68)
      

      Attachments

        Issue Links

          Activity

            People

              aslak@redhat.com Aslak Knutsen
              rhn-engineering-jharting Jozef Hartinger
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: