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

Screen Recorder with TestNG standalone causes java.lang.NoClassDefFoundError

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Major Major
    • None
    • 1.0.0.Alpha2
    • None
    • None
    • Hide

      1. Unpack enclosed project
      2. Run mvn verify

      This will start embedded Jetty and run the SimpleTest which fails on aforementioned exception. Test works just fine if you remove the page object from SimpleTest.

      Show
      1. Unpack enclosed project 2. Run mvn verify This will start embedded Jetty and run the SimpleTest which fails on aforementioned exception. Test works just fine if you remove the page object from SimpleTest.

      Running functional test with Drone, Graphene, Screen Recorder in TestNG standalone mode with cause java.lang.NoClassDefFoundError after start of the embedded Jetty server. Problem is caused by the injection of page object to the test case, so for instance @Page SimplePage page;.

       java.lang.NoClassDefFoundError: Lorg/arquillian/screenRecorder/bug/page/SimplePage; 
          at java.lang.Class.getDeclaredFields0(Native Method)
          at java.lang.Class.privateGetDeclaredFields(Class.java:2387) 
          at java.lang.Class.getDeclaredFields(Class.java:1796) 
          at org.jboss.arquillian.drone.impl.SecurityActions$2.run(SecurityActions.java:163) 
          at org.jboss.arquillian.drone.impl.SecurityActions$2.run(SecurityActions.java:158) 
          at java.security.AccessController.doPrivileged(Native Method) 
          at org.jboss.arquillian.drone.impl.SecurityActions.getFieldsWithAnnotation(SecurityActions.java:158) 
          at org.jboss.arquillian.drone.impl.DroneConfigurator.configureDrone(DroneConfigurator.java:102) 
          at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94) 
          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:75) 
          at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94) 
          at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88) 
          at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:60) 
          at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94) 
          at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88) 
          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.test.impl.EventTestRunnerAdaptor.beforeClass(EventTestRunnerAdaptor.java:80) 
          at org.jboss.arquillian.testng.Arquillian.arquillianBeforeClass(Arquillian.java:103)
      Caused by: java.lang.ClassNotFoundException: org.arquillian.screenRecorder.bug.page.SimplePage 
          at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
          at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
          at java.security.AccessController.doPrivileged(Native Method) 
          at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
          at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
          at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
          at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

      Also note that it works correctly with standalone JUnit (just added dependency to JUnit, junit-standalone and changed annotations in test class)

            Unassigned Unassigned
            pmensik@redhat.com Petr Mensik (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: