Hi, some mounth ago openejb needed ejb-jar to be able to deploy a module. I think the osgi integration was written before openejb scans annotations to discover modules.
The use case was: you deploy an ejb module as a bundle and you want to deploy your webservices/ejbs... it should work. - Romain 2011/7/4 Charles Moulliard <[email protected]> > I have been able to find the bundles required to deploy OpenEJB > 4.0-SNASPHOT on Apache Karaf 2.2.1. Unfortunately, I get this error at > the launch > > Starting OpenEJB... > FATAL ERROR WHILE CONFIGURING LOGGING!!!. MISSING embedded.juli.properties > FILE > FATAL ERROR WHILE CONFIGURING LOGGING!!!. MISSING embedded.juli.properties > FILE > Apache OpenEJB ${pom.version} build: > @DATE-REPLACED-BY-MAVEN@-@TIME-REPLACED-BY-MAVEN@ > http://openejb.apache.org/ > Registering OSGified OpenEJB Deployer... > [Deployer] Bundle org.apache.openejb.core-osgi has been started > [Deployer] Checking whether it's an EJB module > ERROR: Bundle org.apache.openejb.core-osgi [198] EventDispatcher: > Error during dispatch. (java.lang.NullPointerException) > java.lang.NullPointerException > at > org.apache.openejb.core.osgi.impl.Deployer.deploy(Deployer.java:58) > at > org.apache.openejb.core.osgi.impl.Deployer.bundleChanged(Deployer.java:45) > at > > org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:807) > at > > org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:729) > at > > org.apache.felix.framework.util.EventDispatcher.run(EventDispatcher.java:949) > at > > org.apache.felix.framework.util.EventDispatcher.access$000(EventDispatcher.java:54) > at > > org.apache.felix.framework.util.EventDispatcher$1.run(EventDispatcher.java:106) > at java.lang.Thread.run(Thread.java:680) > > According to the code, > > public class Deployer implements BundleListener { > > public void bundleChanged(BundleEvent event) { > switch (event.getType()) { > case BundleEvent.STARTED: > deploy(event.getBundle()); > break; > case BundleEvent.STOPPED: > undeploy(event.getBundle()); > break; > } > } > > private void deploy(Bundle bundle) { > System.out.println(String.format("[Deployer] Bundle %s has been > started", bundle.getSymbolicName())); > > System.out.println(String.format("[Deployer] Checking whether it's > an EJB module")); > > Enumeration<?> e = bundle.findEntries("META-INF", "ejb-jar.xml", > false); > > the deployer tries to find into META-INF file of the bundle > org.apache.openejb.core-osgi an ejb-jar.xml file. This is a bit curious as > the Deployer class should be used to scan by example apps directory > containing EAR or WAR files to be deployed. > > Does anybody knows the reason why the class is coded like that ? > > Regards, > > > Charles > Apache Committer - ServiceMix, Karaf & Camel > > -- > View this message in context: > http://openejb.979440.n4.nabble.com/Issue-with-openejb-on-OSGI-tp3643290p3643290.html > Sent from the OpenEJB Dev mailing list archive at Nabble.com. >
