Hi

Its been a challenge to upgrade to the OSGi stuff for the Camel 2.11
release. With a recent fix in pojosr 0.2.0 it now supports OSGi 4.3
and Aries Blueprint 1.0.0 as well.

So I took a stab of upgrading the trunk code, with the patch included
that Babak did recently in the OSGi 4.2.0 -> 4.3.0 upgrade.
So all compiles, and builds, and whatnot. And I can deploy Camel in
Karaf 2.3.0, and run it etc.

However the tests in
tests/camel-itest-karaf
tests/camel-itest-osgi

Fails to startup due OSGi problems.

You can reproduce the issue easily by
cd tests
cd camel-itest-karaf
mvn clean test -Dtest=CamelAhcTest

which runs a single test. And in the target/surefire-reports you can
get output that its the OSGi dependencies that are unhappy,
Just a little teaser here
1637 [main] INFO
org.ops4j.pax.exam.rbc.client.RemoteBundleContextClient - Waiting for
remote bundle context.. on 21414 name:
f68838a5-1960-46fa-b2ab-907fd8eb5172 timout: [ RelativeTimeout value =
180000 ]
ERROR: Error parsing system bundle export statement:
org.osgi.framework.startlevel;uses:="org.osgi.framework";version="1.0",
org.osgi.framework.wiring;uses:="org.osgi.resource,org.osgi.framework";version="1.1",
org.osgi.framework.hooks.bundle;uses:="org.osgi.framework";version="1.1",
org.osgi.framework.hooks.service;uses:="org.osgi.framework";version="1.1",
org.osgi.framework.hooks.resolver;uses:="org.osgi.framework.wiring";version="1.0",
org.osgi.framework.launch;uses:="org.osgi.framework";version="1.1",
org.osgi.framework.namespace;uses:="org.osgi.resource";version="1.0",
org.osgi.framework;version="1.7",org.osgi.framework.hooks.weaving;uses:="org.osgi.framework.wiring";version="1.0",org.osgi.resource;version="1.0",org.osgi.service.url;version="1.0",org.osgi.service.startlevel;uses:="org.osgi.framework";version="1.1",org.osgi.service.packageadmin;uses:="org.osgi.framework";version="1.2",org.osgi.service.url;version="1.0",
org.osgi.util.tracker;uses:="org.osgi.framework";version="1.5.1",
org.apache.karaf.jaas.boot;version="2.3.0",
org.apache.karaf.jaas.boot.principal;version="2.3.0",
org.apache.karaf.version;version="2.3.0",
com.sun.org.apache.xalan.internal.xsltc.trax,
com.sun.org.apache.xerces.internal.dom,
com.sun.org.apache.xerces.internal.jaxp,
com.sun.org.apache.xerces.internal.xni, com.sun.jndi.ldap,
javax.accessibility, # javax.activation, javax.activity,
javax.annotation;version="1.1",
javax.annotation.processing;version="1.1", javax.crypto,
javax.crypto.interfaces, javax.crypto.spec, javax.imageio,
javax.imageio.event, javax.imageio.metadata,
javax.imageio.plugins.bmp, javax.imageio.plugins.jpeg,
javax.imageio.spi, javax.imageio.stream, # javax.jws, #
javax.jws.soap, javax.lang.model, javax.lang.model.element,
javax.lang.model.type, javax.lang.model.util, javax.management,
javax.management.loading, javax.management.modelmbean,
javax.management.monitor, javax.management.openmbean,
javax.management.relation, javax.management.remote,
javax.management.remote.rmi, javax.management.timer, javax.naming,
javax.naming.directory, javax.naming.event, javax.naming.ldap,
javax.naming.spi, javax.net, javax.net.ssl, javax.print,
javax.print.attribute, javax.print.attribute.standard,
javax.print.event, javax.rmi, javax.rmi.CORBA, javax.rmi.ssl,
javax.security.auth, javax.security.auth.callback,
javax.security.auth.kerberos, javax.security.auth.login,
javax.security.auth.spi, javax.security.auth.x500,
javax.security.cert, javax.security.sasl, javax.sound.midi,
javax.sound.midi.spi, javax.sound.sampled, javax.sound.sampled.spi,
javax.sql, javax.sql.rowset, javax.sql.rowset.serial,
javax.sql.rowset.spi, javax.swing, javax.swing.border,
javax.swing.colorchooser, javax.swing.event, javax.swing.filechooser,
javax.swing.plaf, javax.swing.plaf.basic, javax.swing.plaf.metal,
javax.swing.plaf.multi, javax.swing.plaf.synth, javax.swing.table,
javax.swing.text, javax.swing.text.html, javax.swing.text.html.parser,
javax.swing.text.rtf, javax.swing.tree, javax.swing.undo, javax.tools,
javax.transaction; javax.transaction.xa; partial=true;
mandatory:=partial, javax.xml, # javax.xml.bind, #
javax.xml.bind.annotation, # javax.xml.bind.annotation.adapters, #
javax.xml.bind.attachment, # javax.xml.bind.helpers, #
javax.xml.bind.util, javax.xml.crypto, javax.xml.crypto.dom,
javax.xml.crypto.dsig, javax.xml.crypto.dsig.dom,
javax.xml.crypto.dsig.keyinfo, javax.xml.crypto.dsig.spec,
javax.xml.datatype, javax.xml.namespace, javax.xml.parsers, #
javax.xml.soap, # javax.xml.stream, # javax.xml.stream.events, #
javax.xml.stream.util, javax.xml.transform, javax.xml.transform.dom,
javax.xml.transform.sax, javax.xml.transform.stax,
javax.xml.transform.stream, javax.xml.validation, # javax.xml.ws, #
javax.xml.ws.handler, # javax.xml.ws.handler.soap, #
javax.xml.ws.http, # javax.xml.ws.soap, # javax.xml.ws.spi,
javax.xml.xpath, org.ietf.jgss, org.omg.CORBA, org.omg.CORBA_2_3,
org.omg.CORBA_2_3.portable, org.omg.CORBA.DynAnyPackage,
org.omg.CORBA.ORBPackage, org.omg.CORBA.portable,
org.omg.CORBA.TypeCodePackage, org.omg.CosNaming,
org.omg.CosNaming.NamingContextExtPackage,
org.omg.CosNaming.NamingContextPackage, org.omg.Dynamic,
org.omg.DynamicAny, org.omg.DynamicAny.DynAnyFactoryPackage,
org.omg.DynamicAny.DynAnyPackage, org.omg.IOP,
org.omg.IOP.CodecFactoryPackage, org.omg.IOP.CodecPackage,
org.omg.Messaging, org.omg.PortableInterceptor,
org.omg.PortableInterceptor.ORBInitInfoPackage,
org.omg.PortableServer, org.omg.PortableServer.CurrentPackage,
org.omg.PortableServer.POAManagerPackage,
org.omg.PortableServer.POAPackage, org.omg.PortableServer.portable,
org.omg.PortableServer.ServantLocatorPackage, org.omg.SendingContext,
org.omg.stub.java.rmi, org.omg.stub.javax.management.remote.rmi,
org.w3c.dom, org.w3c.dom.bootstrap, org.w3c.dom.css,
org.w3c.dom.events, org.w3c.dom.html, org.w3c.dom.ls,
org.w3c.dom.ranges, org.w3c.dom.stylesheets, org.w3c.dom.traversal,
org.w3c.dom.views, org.w3c.dom.xpath, org.xml.sax, org.xml.sax.ext,
org.xml.sax.helpers, (org.osgi.framework.BundleException: Exported
package names cannot be zero length.)
org.osgi.framework.BundleException: Exported package names cannot be
zero length.
        at 
org.apache.felix.framework.util.manifestparser.ManifestParser.normalizeExportClauses(ManifestParser.java:729)
        at 
org.apache.felix.framework.util.manifestparser.ManifestParser.<init>(ManifestParser.java:191)
        at 
org.apache.felix.framework.ExtensionManager.<init>(ExtensionManager.java:220)
        at org.apache.felix.framework.Felix.<init>(Felix.java:374)
        at 
org.apache.felix.framework.FrameworkFactory.newFramework(FrameworkFactory.java:28)
        at org.apache.karaf.main.Main.launch(Main.java:288)
        at org.apache.karaf.main.Main.main(Main.java:497)
org.osgi.framework.BundleException: Unresolved constraint in bundle
org.ops4j.pax.url.mvn [1]: Unable to resolve 1.0: missing requirement
[1.0] osgi.wiring.package; (osgi.wiring.package=javax.net.ssl)
        at 
org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3826)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1868)
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1191)
        at 
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:295)
        at java.lang.Thread.run(Thread.java:680)


So anyone who eats OSGi for breakfast, please have fun and decipher
why its unhappy.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
FuseSource is now part of Red Hat
Email: cib...@redhat.com
Web: http://fusesource.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

Reply via email to