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.
>

Reply via email to