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