4 Replies Latest reply on Nov 4, 2011 2:14 PM by Viggo Navarsete

    Windows embedded woes

    Nicklas Karlsson Master

      I have two Windows 7 64bit machines running Sun JDK 1.6.0_23 and maven 3.0.2. One of them works fine but the other one goes on deployment:

       

      13:01:16,988 INFO  [org.jboss.weld.Version] WELD-000900 1.1.0 (2011-01-10 09:56)

      13:01:17,417 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Create: name=vfs:///C:/Users/karlsnic/AppData/Local/Temp/test.war_WeldBootstrapBean state=Configured: java.lang.NullPointerException

                at org.jboss.weld.util.ApiAbstraction.annotationTypeForName(ApiAbstraction.java:86)

                at org.jboss.weld.ejb.EJBApiAbstraction.<init>(EJBApiAbstraction.java:36)

                at org.jboss.weld.bootstrap.BeanDeployment.<init>(BeanDeployment.java:100)

                at org.jboss.weld.bootstrap.WeldBootstrap$DeploymentVisitor.visit(WeldBootstrap.java:185)

                at org.jboss.weld.bootstrap.WeldBootstrap$DeploymentVisitor.visit(WeldBootstrap.java:196)

                at org.jboss.weld.bootstrap.WeldBootstrap$DeploymentVisitor.visit(WeldBootstrap.java:156)

                at org.jboss.weld.bootstrap.WeldBootstrap.startContainer(WeldBootstrap.java:287)

                at org.jboss.weld.integration.deployer.env.helpers.BootstrapBean.initialize(BootstrapBean.java:106)

       

      I can't find any difference in env vars (even tried clearing them all and adding as needed). Any suggestions?

       

      really driving me nuts for the whole day...

       

      The same test project also works fine on a F14

        • 1. Re: Windows embedded woes
          Richard Hopkirk Newbie

          I have encountered a similar problem, http://seamframework.org/Community/ProblemWithJbossAS600FINALAndWELD110CR3AndSEAMPERSISTENCE300CR1, so I was just wondering if you managed to fix this ?

          • 2. Re: Windows embedded woes
            Viggo Navarsete Expert

            HI,

             

            I'm also experiencing the same problems as described in this thread. I have a (Maven-based) project where I have a few Arquillian tests. Everything works fine on several computers, but on one it doesn't (which accidentily happens to be our nightly build server!). I've compared Maven, JDK, JBOss version, and it's all the same. I'm running:
            Maven 3.0.3

            JDK 1.6.0_26

            JBoss 6.1.0.Final
            Ubuntu 11.04

             

            I can see that Nicklas has dicsussed this topic on #jbosstesting irc channel, but without any conclusion as far as I can see: http://echelog.matzon.dk/logs/browse/jbosstesting/1297638000

            • 3. Re: Windows embedded woes
              Nicklas Karlsson Master

              I must say I never got to the bottom of this...

              • 4. Re: Windows embedded woes
                Viggo Navarsete Expert

                The way I fixed it was to run the Arquillian tests on another JBoss installation. When it failed I ran a jboss server instance where there were already some jboss instances running. So, in my pom.xml I downloaded another JBoss installation by using this plugin:

                 

                <!-- Get AS and put into "target" -->

                <plugin>

                          <groupId>org.apache.maven.plugins</groupId>

                          <artifactId>maven-dependency-plugin</artifactId>

                          <executions>

                                    <execution>

                                              <id>unpack</id>

                                              <phase>generate-test-resources</phase>

                                              <!-- So run before testing -->

                                              <goals>

                                                        <goal>unpack</goal>

                                              </goals>

                                              <configuration>

                                                        <artifactItems>

                                                                  <artifactItem>

                                                                            <groupId>org.jboss.jbossas</groupId>

                                                                            <artifactId>jboss-as-distribution</artifactId>

                                                                            <version>${version.org.jboss.jbossas}</version>

                                                                            <type>zip</type>

                                                                            <overWrite>false</overWrite>

                                                                            <outputDirectory>${project.build.directory}</outputDirectory>

                                                                  </artifactItem>

                                                        </artifactItems>

                                              </configuration>

                                    </execution>

                          </executions>

                </plugin>

                 

                I set another jboss home by setting these properties:

                <properties>

                          <version.org.jboss.jbossas>6.1.0.Final</version.org.jboss.jbossas>

                          <jboss.home>${project.build.directory}/jboss-${version.org.jboss.jbossas}</jboss.home>

                </properties>

                 

                and the tests were run by using the maven-failsafe-plugin like this:

                <!-- FailSafe Plugin. Expects test suffix "IT". -->

                <plugin>

                          <artifactId>maven-failsafe-plugin</artifactId>

                          <version>2.6</version>

                          <executions>

                                    <execution>

                                              <id>integration-test</id>

                                              <phase>integration-test</phase>

                                              <goals>

                                                        <goal>integration-test</goal>

                                              </goals>

                                              <configuration>

                                                        <additionalClasspathElements>

                                                                  <additionalClasspathElement>${jboss.home}/client/jbossws-native-client.jar

                </additionalClasspathElement>

                                                                  <additionalClasspathElement>${jboss.home}/server/default/deploy/jbossweb.sar

                </additionalClasspathElement>

                                                        </additionalClasspathElements>

                                                        <redirectTestOutputToFile>true</redirectTestOutputToFile>

                                                        <trimStackTrace>false</trimStackTrace>

                                                        <printSummary>true</printSummary>

                                                        <forkMode>pertest</forkMode>

                                                        <!-- IMPORTANT: argLine *MUST* be on *ONE* line, otherwise it will

                                                                  fail! -->

                                                        <argLine>-Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djava.util.logging.manager=org.jboss.logmanager.LogManager -Djava.endorsed.dirs=${jboss.home}/lib/endorsed -Djboss.home=${jboss.home} -Djboss.boot.server.log.dir=${jboss.home} -Dorg.jboss.reflect.spi.TypeInfoFactory=org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactory -Djboss.service.binding.set=ports-02</argLine>

                                              </configuration>

                                    </execution>

                                    <execution>

                                              <id>verify</id>

                                              <goals>

                                                        <goal>verify</goal>

                                              </goals>

                                    </execution>

                          </executions>

                </plugin>

                 

                By the way, I'm using -Djboss.service.binding.set in order to run jboss with a different set of ports, to avoid port conflicts if you're running different JBoss instances at the same time! (please se another post I have if you want to see how to run the embedded jboss 6 on a different port set)