Good day, I am getting the same problem. And my system is able to find the META-INF/ejb-jar.xml as seen in the last part of the surefire reports ( not unless that's the wrong ejb-jar.xml that I'm supposed to look for ).
I downloaded openejb-examples-3.0 ( [1] ), extracted the archive, and run `mvn clean install`, and I am getting NameNotFoundException all over the place. Are there are many steps I need to take to set this up? Thanks, Franz [1] http://www.apache.org/dyn/closer.cgi/openejb/3.0/openejb-examples-3.0.tar. Sample Surefire reports from simple-stateless: > <?xml version="1.0" encoding="UTF-8" ?> > <testsuite errors="2" skipped="0" tests="2" time="1.075" failures="0" > name="org.superbiz.calculator.CalculatorTest"> > <properties> > <property value="3.0" name="openejb.version"/> > <property value="Java(TM) 2 Runtime Environment, Standard Edition" > name="java.runtime.name"/> > <property value="/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/i386" > name="sun.boot.library.path"/> > <property value="1.5.0_15-b04" name="java.vm.version"/> > <property value="Sun Microsystems Inc." name="java.vm.vendor"/> > <property value="http://java.sun.com/" name="java.vendor.url"/> > <property value=":" name="path.separator"/> > <property value="Java HotSpot(TM) Server VM" name="java.vm.name"/> > <property value="sun.io" name="file.encoding.pkg"/> > <property > value="org.apache.openejb.core.security.JaccProvider$Factory" > name="javax.security.jacc.PolicyConfigurationFactory.provider"/> > <property value="PH" name="user.country"/> > <property value="SUN_STANDARD" name="sun.java.launcher"/> > <property value="unknown" name="sun.os.patch.level"/> > <property value="Java Virtual Machine Specification" > name="java.vm.specification.name"/> > <property > value="/home/franz/src/openejb-examples-3.0/simple-stateless" > name="user.dir"/> > <property value="1.5.0_15-b04" name="java.runtime.version"/> > <property > value="/home/franz/src/openejb-examples-3.0/simple-stateless" > name="derby.system.home"/> > <property value="sun.awt.X11GraphicsEnvironment" > name="java.awt.graphicsenv"/> > <property > value="/home/franz/src/openejb-examples-3.0/simple-stateless" > name="basedir"/> > <property > value="/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/endorsed" > name="java.endorsed.dirs"/> > <property value="i386" name="os.arch"/> > <property value="/tmp/surefirebooter58049.jar" > name="surefire.real.class.path"/> > <property value="/tmp" name="java.io.tmpdir"/> > <property value=" > " name="line.separator"/> > <property value="Sun Microsystems Inc." > name="java.vm.specification.vendor"/> > <property value="org.apache.openejb.core.ivm.naming" > name="java.naming.factory.url.pkgs"/> > <property value="Linux" name="os.name"/> > <property value="true" name="derby.storage.fileSyncTransactionLog"/> > <property value="UTF-8" name="sun.jnu.encoding"/> > <property > value="/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/i386/server:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/i386:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/../lib/i386" > name="java.library.path"/> > <property > value="/home/franz/src/openejb-examples-3.0/simple-stateless/target/test-classes:/home/franz/src/openejb-examples-3.0/simple-stateless/target/classes:/shared/apps/.m2/repository/junit/junit/4.1/junit-4.1.jar:/shared/apps/.m2/repository/org/apache/openejb/javaee-api/5.0-1/javaee-api-5.0-1.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-core/3.0/openejb-core-3.0.jar:/shared/apps/.m2/repository/log4j/log4j/1.2.12/log4j-1.2.12.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-loader/3.0/openejb-loader-3.0.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-javaagent/3.0/openejb-javaagent-3.0.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-jee/3.0/openejb-jee-3.0.jar:/shared/apps/.m2/repository/com/sun/xml/bind/jaxb-impl/2.0.5/jaxb-impl-2.0.5.jar:/shared/apps/.m2/repository/commons-cli/commons-cli/1.1/commons-cli-1.1.jar:/shared/apps/.m2/repository/org/apache/activemq/activemq-ra/4.1.1/activemq-ra-4.1.1.jar:/shared/apps/.m2/repository/org/apache/activemq/activemq-core/4.1.1/activemq-core-4.1.1.jar:/shared/apps/.m2/repository/backport-util-concurrent/backport-util-concurrent/2.1/backport-util-concurrent-2.1.jar:/shared/apps/.m2/repository/commons-logging/commons-logging/1.1/commons-logging-1.1.jar:/shared/apps/.m2/repository/org/apache/activemq/activeio-core/3.0.0-incubator/activeio-core-3.0.0-incubator.jar:/shared/apps/.m2/repository/org/apache/openjpa/openjpa/1.0.1/openjpa-1.0.1.jar:/shared/apps/.m2/repository/net/sourceforge/serp/serp/1.13.1/serp-1.13.1.jar:/shared/apps/.m2/repository/commons-lang/commons-lang/2.1/commons-lang-2.1.jar:/shared/apps/.m2/repository/commons-collections/commons-collections/3.2/commons-collections-3.2.jar:/shared/apps/.m2/repository/org/apache/geronimo/components/geronimo-connector/2.1/geronimo-connector-2.1.jar:/shared/apps/.m2/repository/org/apache/geronimo/components/geronimo-transaction/2.1/geronimo-transaction-2.1.jar:/shared/apps/.m2/repository/org/objectweb/howl/howl/1.0.1-1/howl-1.0.1-1.jar:/shared/apps/.m2/repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/1.2/geronimo-javamail_1.4_mail-1.2.jar:/shared/apps/.m2/repository/org/apache/openejb/xbean-reflect/3.4-r636442/xbean-reflect-3.4-r636442.jar:/shared/apps/.m2/repository/org/apache/openejb/xbean-finder/3.4-r636442/xbean-finder-3.4-r636442.jar:/shared/apps/.m2/repository/org/apache/xbean/xbean-naming/3.3/xbean-naming-3.3.jar:/shared/apps/.m2/repository/asm/asm/2.2.3/asm-2.2.3.jar:/shared/apps/.m2/repository/asm/asm-commons/2.2.3/asm-commons-2.2.3.jar:/shared/apps/.m2/repository/asm/asm-tree/2.2.3/asm-tree-2.2.3.jar:/shared/apps/.m2/repository/hsqldb/hsqldb/1.8.0.7/hsqldb-1.8.0.7.jar:/shared/apps/.m2/repository/org/apache/openejb/commons-dbcp-all/1.3/commons-dbcp-all-1.3.jar:/shared/apps/.m2/repository/org/codehaus/swizzle/swizzle-stream/1.0.1/swizzle-stream-1.0.1.jar:/shared/apps/.m2/repository/wsdl4j/wsdl4j/1.6.1/wsdl4j-1.6.1.jar:" > name="surefire.test.class.path"/> > <property value="Java Platform API Specification" > name="java.specification.name"/> > <property value="49.0" name="java.class.version"/> > <property value="HotSpot Server Compiler" > name="sun.management.compiler"/> > <property value="2.6.24-19-generic" name="os.version"/> > <property value="/home/franz" name="user.home"/> > <property value="Asia/Manila" name="user.timezone"/> > <property value="sun.print.PSPrinterJob" name="java.awt.printerjob"/> > <property value="1.5" name="java.specification.version"/> > <property value="UTF-8" name="file.encoding"/> > <property value="franz" name="user.name"/> > <property > value="/home/franz/src/openejb-examples-3.0/simple-stateless/target/test-classes:/home/franz/src/openejb-examples-3.0/simple-stateless/target/classes:/shared/apps/.m2/repository/junit/junit/4.1/junit-4.1.jar:/shared/apps/.m2/repository/org/apache/openejb/javaee-api/5.0-1/javaee-api-5.0-1.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-core/3.0/openejb-core-3.0.jar:/shared/apps/.m2/repository/log4j/log4j/1.2.12/log4j-1.2.12.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-loader/3.0/openejb-loader-3.0.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-javaagent/3.0/openejb-javaagent-3.0.jar:/shared/apps/.m2/repository/org/apache/openejb/openejb-jee/3.0/openejb-jee-3.0.jar:/shared/apps/.m2/repository/com/sun/xml/bind/jaxb-impl/2.0.5/jaxb-impl-2.0.5.jar:/shared/apps/.m2/repository/commons-cli/commons-cli/1.1/commons-cli-1.1.jar:/shared/apps/.m2/repository/org/apache/activemq/activemq-ra/4.1.1/activemq-ra-4.1.1.jar:/shared/apps/.m2/repository/org/apache/activemq/activemq-core/4.1.1/activemq-core-4.1.1.jar:/shared/apps/.m2/repository/backport-util-concurrent/backport-util-concurrent/2.1/backport-util-concurrent-2.1.jar:/shared/apps/.m2/repository/commons-logging/commons-logging/1.1/commons-logging-1.1.jar:/shared/apps/.m2/repository/org/apache/activemq/activeio-core/3.0.0-incubator/activeio-core-3.0.0-incubator.jar:/shared/apps/.m2/repository/org/apache/openjpa/openjpa/1.0.1/openjpa-1.0.1.jar:/shared/apps/.m2/repository/net/sourceforge/serp/serp/1.13.1/serp-1.13.1.jar:/shared/apps/.m2/repository/commons-lang/commons-lang/2.1/commons-lang-2.1.jar:/shared/apps/.m2/repository/commons-collections/commons-collections/3.2/commons-collections-3.2.jar:/shared/apps/.m2/repository/org/apache/geronimo/components/geronimo-connector/2.1/geronimo-connector-2.1.jar:/shared/apps/.m2/repository/org/apache/geronimo/components/geronimo-transaction/2.1/geronimo-transaction-2.1.jar:/shared/apps/.m2/repository/org/objectweb/howl/howl/1.0.1-1/howl-1.0.1-1.jar:/shared/apps/.m2/repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/1.2/geronimo-javamail_1.4_mail-1.2.jar:/shared/apps/.m2/repository/org/apache/openejb/xbean-reflect/3.4-r636442/xbean-reflect-3.4-r636442.jar:/shared/apps/.m2/repository/org/apache/openejb/xbean-finder/3.4-r636442/xbean-finder-3.4-r636442.jar:/shared/apps/.m2/repository/org/apache/xbean/xbean-naming/3.3/xbean-naming-3.3.jar:/shared/apps/.m2/repository/asm/asm/2.2.3/asm-2.2.3.jar:/shared/apps/.m2/repository/asm/asm-commons/2.2.3/asm-commons-2.2.3.jar:/shared/apps/.m2/repository/asm/asm-tree/2.2.3/asm-tree-2.2.3.jar:/shared/apps/.m2/repository/hsqldb/hsqldb/1.8.0.7/hsqldb-1.8.0.7.jar:/shared/apps/.m2/repository/org/apache/openejb/commons-dbcp-all/1.3/commons-dbcp-all-1.3.jar:/shared/apps/.m2/repository/org/codehaus/swizzle/swizzle-stream/1.0.1/swizzle-stream-1.0.1.jar:/shared/apps/.m2/repository/wsdl4j/wsdl4j/1.6.1/wsdl4j-1.6.1.jar:" > name="java.class.path"/> > <property value="log4j" name="openjpa.Log"/> > <property value="true" name="noBanner"/> > <property value="1.0" name="java.vm.specification.version"/> > <property value="32" name="sun.arch.data.model"/> > <property value="/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre" > name="java.home"/> > <property value="Sun Microsystems Inc." > name="java.specification.vendor"/> > <property value="en" name="user.language"/> > <property value="mixed mode" name="java.vm.info"/> > <property value="1.5.0_15" name="java.version"/> > <property > value="org.apache.openejb.core.security.jacc.BasicJaccProvider" > name="org.apache.openejb.core.security.JaccProvider"/> > <property value="/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/ext" > name="java.ext.dirs"/> > <property > value="/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/rt.jar:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/i18n.jar:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/jsse.jar:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/jce.jar:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/lib/charsets.jar:/usr/lib/jvm/java-1.5.0-sun-1.5.0.15/jre/classes" > name="sun.boot.class.path"/> > <property value="Sun Microsystems Inc." name="java.vendor"/> > <property > value="jar:file:/shared/apps/.m2/repository/org/apache/openejb/openejb-core/3.0/openejb-core-3.0.jar!/login.config" > name="java.security.auth.login.config"/> > <property value="/shared/apps/.m2/repository" name="localRepository"/> > <property value="/" name="file.separator"/> > <property value="http://java.sun.com/cgi-bin/bugreport.cgi" > name="java.vendor.url.bug"/> > <property value="little" name="sun.cpu.endian"/> > <property value="UnicodeLittle" name="sun.io.unicode.encoding"/> > <property value="gnome" name="sun.desktop"/> > <property value="" name="sun.cpu.isalist"/> > </properties> > <testcase classname="org.superbiz.calculator.CalculatorTest" > time="1.039" name="testCalculatorViaRemoteInterface"> > <error type="javax.naming.NameNotFoundException" message="Name > "CalculatorImplRemote" not > found.">javax.naming.NameNotFoundException: Name > "CalculatorImplRemote" not found. > at > org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:172) > at > org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:129) > at javax.naming.InitialContext.lookup(InitialContext.java:351) > at > org.superbiz.calculator.CalculatorTest.testCalculatorViaRemoteInterface(CalculatorTest.java:55) > 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:585) > at junit.framework.TestCase.runTest(TestCase.java:164) > at junit.framework.TestCase.runBare(TestCase.java:130) > at junit.framework.TestResult$1.protect(TestResult.java:110) > at junit.framework.TestResult.runProtected(TestResult.java:128) > at junit.framework.TestResult.run(TestResult.java:113) > at junit.framework.TestCase.run(TestCase.java:120) > at junit.framework.TestSuite.runTest(TestSuite.java:228) > at junit.framework.TestSuite.run(TestSuite.java:223) > at > org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:35) > at > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) > at org.apache.maven.surefire.Surefire.run(Surefire.java:177) > 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:585) > at > org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) > at > org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009) > </error> > <system-out>Apache OpenEJB 3.0 build: 20080408-04:13 > http://openejb.apache.org/ > INFO - openejb.home = > /home/franz/src/openejb-examples-3.0/simple-stateless > INFO - openejb.base = > /home/franz/src/openejb-examples-3.0/simple-stateless > INFO - Configuring Service(id=Default Security Service, > type=SecurityService, provider-id=Default Security Service) > INFO - Configuring Service(id=Default Transaction Manager, > type=TransactionManager, provider-id=Default Transaction Manager) > INFO - Configuring Service(id=Default JDK 1.3 ProxyFactory, > type=ProxyFactory, provider-id=Default JDK 1.3 ProxyFactory) > app = > jar:file:/shared/apps/.m2/repository/org/apache/openejb/openejb-core/3.0/openejb-core-3.0.jar!/META-INF/ejb-jar.xml > </system-out> > </testcase> > <testcase classname="org.superbiz.calculator.CalculatorTest" > time="0.001" name="testCalculatorViaLocalInterface"> > <error type="javax.naming.NameNotFoundException" message="Name > "CalculatorImplLocal" not > found.">javax.naming.NameNotFoundException: Name > "CalculatorImplLocal" not found. > at > org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:172) > at > org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:129) > at javax.naming.InitialContext.lookup(InitialContext.java:351) > at > org.superbiz.calculator.CalculatorTest.testCalculatorViaLocalInterface(CalculatorTest.java:72) > 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:585) > at junit.framework.TestCase.runTest(TestCase.java:164) > at junit.framework.TestCase.runBare(TestCase.java:130) > at junit.framework.TestResult$1.protect(TestResult.java:110) > at junit.framework.TestResult.runProtected(TestResult.java:128) > at junit.framework.TestResult.run(TestResult.java:113) > at junit.framework.TestCase.run(TestCase.java:120) > at junit.framework.TestSuite.runTest(TestSuite.java:228) > at junit.framework.TestSuite.run(TestSuite.java:223) > at > org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:35) > at > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) > at org.apache.maven.surefire.Surefire.run(Surefire.java:177) > > 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:585) > at > org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) > at > org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009) > </error> > <system-out>app = > jar:file:/shared/apps/.m2/repository/org/apache/openejb/openejb-core/3.0/openejb-core-3.0.jar!/META-INF/ejb-jar.xml > </system-out> > </testcase> > </testsuite> > > David Blevins wrote: > > > On Oct 9, 2008, at 4:32 AM, Bernhard Humm wrote: > >> init: >> deps-jar: >> compile: >> compile-test: >> Testsuite: org.superbiz.calculator.CalculatorTest >> Apache OpenEJB 3.0 build: 20080408-04:13 >> http://openejb.apache.org/ >> INFO - openejb.home = C:\temp\NetBeans\OpenEJBTest >> INFO - openejb.base = C:\temp\NetBeans\OpenEJBTest >> INFO - Configuring Service(id=Default Security Service, >> type=SecurityService, provider-id=Default Security Service) >> INFO - Configuring Service(id=Default Transaction Manager, >> type=TransactionManager, provider-id=Default Transaction Manager) >> INFO - Configuring Service(id=Default JDK 1.3 ProxyFactory, >> type=ProxyFactory, provider-id=Default JDK 1.3 ProxyFactory) >> Tests run: 2, Failures: 0, Errors: 2, Time elapsed: 5,234 sec > > It doesn't look like the app is getting discovered with the way it's > setup in NetBeans. OpenEJB will search for directories or jars > containing a META-INF/ejb-jar.xml file and load those directories and > jars as individual ejb jars. We have NetBeans users, so I know it's > capable of putting both the classes and the META-INF/ejb-jar.xml in > the same directory so that OpenEJB can discover them together as an > app. We just need to figure out what might be happening with this > particular setup. > > Run this in your test case and see if your classpath is setup right. > There should be a META-INF/ejb-jar.xml file in any directories that > contain ejb classes that should be deployed by OpenEJB. > > Enumeration<URL> ejbJars = > this.getClass().getClassLoader().getResources("META-INF/ejb-jar.xml"); > while (ejbJars.hasMoreElements()) { > URL url = ejbJars.nextElement(); > System.out.println("app = " + url); > } > > > -David > > > > > -- View this message in context: http://www.nabble.com/OpenEJB-with-JUnit-from-NetBeans%3A-NameNotFoundException-tp19874503p19910528.html Sent from the OpenEJB User mailing list archive at Nabble.com.