Hi Claus, Procedure to deploy camel example with this instruction install -s feature:mvn:org.apache.camel/camel-example-sql/2.11-SNAPSHOT works fine now with that modification (https://issues.apache.org/jira/browse/KARAF-2134) EXCEPTED that the feature content (= bundles) are not installed. Guillaume has created a ticket to resolve this issue I think so (?)
Remark : Don't think that drag/drop the bundle of camel-example-sql in deploy directory will work for the reason explained before (but you could make a test) Regards, Charles On Tue, Jan 22, 2013 at 10:08 AM, Claus Ibsen <[email protected]> wrote: > On Mon, Jan 21, 2013 at 3:50 PM, Charles Moulliard <[email protected]> > wrote: > > Works better. Nevertheless the features defined in the features file > > deployed as a bundle are not deployed. Here is an example > > > > [ 127] [Installed ] [ ] [ 80] camel-example-sql > > (2.11.0.SNAPSHOT) // CONTAINS FEATURES.XML FILE > > karaf@root> listurl > > Loaded URI > > true > > bundle://118.0:0/META-INF/org.apache.karaf.shell.features/features.xml > <-- > > WELL DEPLOYED > > > > Definition of the features camel-example-sql > > > > karaf@root> features:info camel-example-sql > > Description of camel-example-sql 2.11-SNAPSHOT feature > > ---------------------------------------------------------------- > > Feature has no configuration > > Feature has no configuration files > > Feature depends on: > > camel 2.11-SNAPSHOT > > camel-spring 2.11-SNAPSHOT > > camel-sql 2.11-SNAPSHOT > > Feature contains followed bundles: > > mvn:org.apache.derby/derby/10.9.1.0 > > mvn:mvn:commons-pool/commons-pool/1.6 > > > > mvn:mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.4_3 > > mvn:org.apache.camel/camel-example-sql/2.11-SNAPSHOT > > > > Excepted camel-example-sql, the others are not deployed/installed > > > > Hi Charles > > Thanks for testing the karaf changes. > So are you saying that installing the example using the features: in > the url handler now works better. > But doesn't work fully yet? > > So are you saying for example that bundles like commons-pool / derby > JDBC driver etc. which > is listed in the features.xml file is not installed? > > Also did you try installing the example by dropping the JAR into the > deploy directory? > > Though I assume you have prior to that installed camel 2.11 in karaf > beforehand? > > > > > > > > > On Mon, Jan 21, 2013 at 2:42 PM, Guillaume Nodet <[email protected]> > wrote: > > > >> Raised and fixed https://issues.apache.org/jira/browse/KARAF-2134 > >> The workaround is to use the plain http url instead of the mvn url. > >> > >> > >> On Mon, Jan 21, 2013 at 10:42 AM, Charles Moulliard <[email protected] > >> >wrote: > >> > >> > Convention is : META-INF + "/" + one directory where directory = > >> > "org.apache.karaf.shell.features" + "/" + "*.xml" where * corresponds > to > >> a > >> > features.xml file > >> > > >> > > >> > On Mon, Jan 21, 2013 at 9:28 AM, Claus Ibsen <[email protected]> > >> > wrote: > >> > > >> > > Hi > >> > > > >> > > Charles may have pointed out about the naming of the features file. > >> > > > >> > > Should it be a file in META-INF which has this long name with all > the > >> > dots? > >> > > Or should it be a features.xml file in META-INF/org/apache/... eg > deep > >> > > down in a sub dir > >> > > > >> > > > >> > > > >> > > On Fri, Jan 18, 2013 at 3:41 PM, Claus Ibsen <[email protected] > > > >> > > wrote: > >> > > > Hi > >> > > > > >> > > > > >> > > > > >> > > > On Fri, Jan 18, 2013 at 2:30 PM, Guillaume Nodet < > [email protected]> > >> > > wrote: > >> > > >> Are you talking about the features deployer ? > >> > > >> Karaf has it already. You can use osgi:install feature:mvn:xxx > or > >> > drop > >> > > the > >> > > >> features file in the deploy directory, or deploy any bundle which > >> has > >> > a > >> > > >> META-INF/org.apache.karaf.shell.features/*.xml file inside. > >> > > >> > >> > > > > >> > > > Thanks I did not know about that. > >> > > > > >> > > > I looked in the docs at: > >> > > > > >> > > > >> > > >> > http://karaf.apache.org/manual/latest-2.3.x/users-guide/provisioning.html > >> > > > > >> > > > And didn't find any reference about that META-INF dir. > >> > > > > >> > > > So I tried this on Camel trunk. But didn't have the luck yet. > >> > > > Notice how the bundle get installed with 2.11-SNAPSHOT as its > name. I > >> > > > guess maybe I do the install command wrong. > >> > > > > >> > > > > >> > > > > >> > > > davsclaus:/opt/apache-karaf-2.3.0$ bin/karaf > >> > > > __ __ ____ > >> > > > / //_/____ __________ _/ __/ > >> > > > / ,< / __ `/ ___/ __ `/ /_ > >> > > > / /| |/ /_/ / / / /_/ / __/ > >> > > > /_/ |_|\__,_/_/ \__,_/_/ > >> > > > > >> > > > Apache Karaf (2.3.0) > >> > > > > >> > > > Hit '<tab>' for a list of available commands > >> > > > and '[cmd] --help' for help on a specific command. > >> > > > Hit '<ctrl-d>' or 'osgi:shutdown' to shutdown Karaf. > >> > > > > >> > > > karaf@root> features: > >> > > > features:addurl features:chooseurl > >> > > > features:info features:install > >> > > > features:list features:listrepositories > >> > > > features:listurl features:listversions > >> > > > features:refreshurl features:removerepository > >> > > > features:removeurl features:uninstall > >> > > > karaf@root> features:chooseurl camel 2.11-SNAPSHOT > >> > > > adding feature url > >> > > > mvn:org.apache.camel.karaf/apache-camel/2.11-SNAPSHOT/xml/features > >> > > > karaf@root> osgi:install > >> > > > feature:mvn:org.apache.camel/camel-example-sql/2.11-SNAPSHOT > >> > > > Bundle ID: 54 > >> > > > karaf@root> la > >> > > > START LEVEL 100 , List Threshold: 0 > >> > > > ID State Blueprint Level Name > >> > > > [ 0] [Active ] [ ] [ 0] System Bundle (4.0.3) > >> > > > [ 1] [Active ] [ ] [ 5] OPS4J Pax Url - mvn: > >> > (1.3.5) > >> > > > [ 2] [Active ] [ ] [ 5] OPS4J Pax Url - wrap: > >> > (1.3.5) > >> > > > [ 3] [Active ] [ ] [ 8] OPS4J Pax Logging - > >> Service > >> > > (1.7.0) > >> > > > [ 4] [Active ] [ ] [ 8] OPS4J Pax Logging - > API > >> > > (1.7.0) > >> > > > [ 5] [Active ] [ ] [ 10] Apache Felix > >> Configuration > >> > > > Admin Service (1.4.0) > >> > > > [ 6] [Active ] [ ] [ 11] Apache Felix File > Install > >> > > (3.2.6) > >> > > > [ 7] [Active ] [Created ] [ 20] Apache Aries Blueprint > >> Core > >> > > (1.0.1) > >> > > > [ 8] [Active ] [ ] [ 20] Apache Aries Util > (1.0.0) > >> > > > [ 9] [Active ] [ ] [ 20] Apache Aries Proxy API > >> > > (1.0.0) > >> > > > [ 10] [Active ] [ ] [ 20] ASM all classes (4.0) > >> > > > [ 11] [Active ] [ ] [ 20] Apache Aries Blueprint > >> API > >> > > (1.0.0) > >> > > > [ 12] [Active ] [ ] [ 20] Apache Aries Proxy > >> Service > >> > > (1.0.0) > >> > > > [ 13] [Active ] [Created ] [ 20] Apache Aries > Blueprint CM > >> > > (1.0.0) > >> > > > [ 14] [Active ] [Created ] [ 25] Apache Karaf :: Shell > :: > >> > > > Console (2.3.0) > >> > > > [ 15] [Active ] [Created ] [ 28] Apache Karaf :: > Deployer > >> > > > :: Blueprint (2.3.0) > >> > > > [ 16] [Active ] [Created ] [ 28] Apache Karaf :: > Deployer > >> > > > :: Spring (2.3.0) > >> > > > [ 17] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > SSH > >> > > (2.3.0) > >> > > > [ 18] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > (2.3.0) > >> > > > [ 19] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > > > Various Commands (2.3.0) > >> > > > [ 20] [Active ] [Created ] [ 30] Apache Karaf :: > Features > >> > > > :: Core (2.3.0) > >> > > > [ 21] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > > > Log Commands (2.3.0) > >> > > > [ 22] [Active ] [Created ] [ 30] Apache Karaf :: > Features > >> > > > :: Command (2.3.0) > >> > > > [ 23] [Active ] [Created ] [ 30] Apache Karaf :: > >> Diagnostic > >> > > > :: Management (2.3.0) > >> > > > [ 24] [Active ] [ ] [ 30] Apache Mina SSHD :: > Core > >> > > (0.8.0) > >> > > > [ 25] [Active ] [Created ] [ 30] Apache Karaf :: > Deployer > >> > > > :: Wrap Non OSGi Jar (2.3.0) > >> > > > [ 26] [Active ] [ ] [ 30] Apache MINA Core > (2.0.7) > >> > > > [ 27] [Active ] [Created ] [ 30] Apache Karaf :: Admin > :: > >> > > > Command (2.3.0) > >> > > > [ 28] [Active ] [Created ] [ 30] Apache Karaf :: > >> Diagnostic > >> > > > :: Command (2.3.0) > >> > > > [ 29] [Active ] [ ] [ 30] Apache Aries JMX Core > >> > (1.0.1) > >> > > > [ 30] [Active ] [ ] [ 30] Apache Karaf :: > >> Diagnostic > >> > > > :: Core (2.3.0) > >> > > > [ 31] [Active ] [Created ] [ 30] Apache Karaf :: Admin > :: > >> > > > Management (2.3.0) > >> > > > [ 32] [Active ] [ ] [ 30] Apache Aries JMX API > >> > (1.0.0) > >> > > > [ 33] [Active ] [Created ] [ 30] Apache Karaf :: > >> Diagnostic > >> > > > :: Common (2.3.0) > >> > > > [ 34] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > > > Development Commands (2.3.0) > >> > > > [ 35] [Active ] [Created ] [ 30] Apache Karaf :: > Deployer > >> > > > :: Features (2.3.0) > >> > > > [ 36] [Active ] [ ] [ 30] Apache Aries JMX > >> Blueprint > >> > > > API (1.0.0) > >> > > > [ 37] [Active ] [Created ] [ 30] Apache Karaf :: Jaas > :: > >> > > > Command (2.3.0) > >> > > > [ 38] [Active ] [Created ] [ 30] Apache Karaf :: JAAS > :: > >> > > > Modules (2.3.0) > >> > > > [ 39] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > > > OSGi Commands (2.3.0) > >> > > > [ 40] [Active ] [Created ] [ 30] Apache Karaf :: > Features > >> > > > :: Management (2.3.0) > >> > > > [ 41] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > > > PackageAdmin Commands (2.3.0) > >> > > > [ 42] [Active ] [ ] [ 30] Apache Aries JMX > >> Blueprint > >> > > > Core (1.0.1) > >> > > > [ 43] [Active ] [Created ] [ 30] Apache Karaf :: Admin > :: > >> > > > Core (2.3.0) > >> > > > [ 44] [Active ] [Created ] [ 30] Apache Karaf :: > Deployer > >> > > > :: Karaf Archive (.kar) (2.3.0) > >> > > > [ 45] [Active ] [Created ] [ 30] Apache Karaf :: JAAS > :: > >> > > > Config (2.3.0) > >> > > > [ 46] [Active ] [Created ] [ 30] Apache Karaf :: Shell > :: > >> > > > ConfigAdmin Commands (2.3.0) > >> > > > [ 47] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: System (2.3.0) > >> > > > [ 48] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: Bundles (2.3.0) > >> > > > [ 49] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: Services (2.3.0) > >> > > > [ 50] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: Config (2.3.0) > >> > > > [ 51] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: Log (2.3.0) > >> > > > [ 52] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: Packages (2.3.0) > >> > > > [ 53] [Active ] [Created ] [ 30] Apache Karaf :: > >> Management > >> > > > :: MBeans :: Dev (2.3.0) > >> > > > [ 54] [Installed ] [ ] [ 80] 2.11-SNAPSHOT (0.0.0) > >> > > > > >> > > > > >> > > > And the example contains the features.xml in that directory. > >> > > > > >> > > > > >> > > > davsclaus:~/workspace/camel/examples/camel-example-sql$ tar -tf > >> > > > target/camel-example-sql-2.11-SNAPSHOT.jar > >> > > > META-INF/MANIFEST.MF > >> > > > META-INF/ > >> > > > META-INF/DEPENDENCIES > >> > > > META-INF/LICENSE > >> > > > META-INF/LICENSE.txt > >> > > > META-INF/NOTICE > >> > > > META-INF/NOTICE.txt > >> > > > META-INF/maven/ > >> > > > META-INF/maven/org.apache.camel/ > >> > > > META-INF/maven/org.apache.camel/camel-example-sql/ > >> > > > META-INF/maven/org.apache.camel/camel-example-sql/pom.properties > >> > > > META-INF/maven/org.apache.camel/camel-example-sql/pom.xml > >> > > > META-INF/org/ > >> > > > META-INF/org/apache/ > >> > > > META-INF/org/apache/karaf/ > >> > > > META-INF/org/apache/karaf/shell/ > >> > > > META-INF/org/apache/karaf/shell/features/ > >> > > > META-INF/org/apache/karaf/shell/features/features.xml > >> > > > META-INF/spring/ > >> > > > META-INF/spring/camel-context.xml > >> > > > log4j.properties > >> > > > org/ > >> > > > org/apache/ > >> > > > org/apache/camel/ > >> > > > org/apache/camel/example/ > >> > > > org/apache/camel/example/sql/ > >> > > > org/apache/camel/example/sql/DatabaseBean.class > >> > > > org/apache/camel/example/sql/OrderBean.class > >> > > > sql.properties > >> > > > > >> > > > > >> > > > > >> > > >> > >> > > >> On Fri, Jan 18, 2013 at 12:46 PM, Achim Nierbeck < > >> > > [email protected]>wrote: > >> > > >> > >> > > >>> Hi Clause, > >> > > >>> > >> > > >>> thanks for summing up what we talked of on IRC :) > >> > > >>> > >> > > >>> I think it could be even easier. > >> > > >>> We could add a bundle tracker for features.xml files that will > >> > install > >> > > >>> those with the features service. > >> > > >>> For this we don't even need a special syntax of the osgi:install > >> url > >> > > >>> (and actually if you want a url-handler to take control of it > you > >> > need > >> > > >>> osgi:install features:mvn:xxxx) > >> > > >>> > >> > > >>> Something like the web-extender of pax-web could be done, and > >> should > >> > be > >> > > >>> quite easy. > >> > > >>> > >> > > >>> regards, Achim > >> > > >>> > >> > > >>> > >> > > >>> 2013/1/18 Claus Ibsen <[email protected]> > >> > > >>> > >> > > >>> > Hi > >> > > >>> > > >> > > >>> > So when people get started with Apache Karaf and Camel (eg not > >> > going > >> > > >>> > down the full ESB with SMX) then I would like to make that > much > >> > > >>> > easier. > >> > > >>> > For example to tell them how easy you can install some of the > >> > > examples > >> > > >>> > we provided with Apache Camel > >> > > >>> > http://camel.apache.org/examples > >> > > >>> > > >> > > >>> > Many of these examples have been prepared for OSGi and have > >> > embedded > >> > > >>> > features.xml file, so in theory they are ready to install. > >> > > >>> > > >> > > >>> > Though I could not find a way to install the example in Karaf > >> > without > >> > > >>> pain. > >> > > >>> > > >> > > >>> > eg I want to do > >> > > >>> > > >> > > >>> > cd apache-karaf-2.3.0 > >> > > >>> > bin/karaf > >> > > >>> > > >> > > >>> > features:choose camel 2.11.0 > >> > > >>> > > >> > > >>> > // and how to install my example, such as camel-example-sql > >> > > >>> > ????? > >> > > >>> > > >> > > >>> > > >> > > >>> > The camel features does not contain examples. > >> > > >>> > And frankly I would like Karaf to be able to install a bundle > but > >> > use > >> > > >>> > the features.xml file that is included in the JAR in the root > >> > > >>> > classpath. (Or some other directory if Karaf has a standard > for > >> > > that). > >> > > >>> > > >> > > >>> > Maybe I can type, eg notice the :feature in the command > >> > > >>> > > >> > > >>> > osgi:install > >> mvn:feature:org.apache/camel/camel-example-sql/2.11.0 > >> > > >>> > > >> > > >>> > Or some other way to install it. > >> > > >>> > > >> > > >>> > Then people just need to download Karaf, and they can install > >> Camel > >> > > >>> > and the examples from Maven. > >> > > >>> > > >> > > >>> > Now I want them to be able to do this for their custom > >> application > >> > as > >> > > >>> > well, so they can do > >> > > >>> > > >> > > >>> > osgi:install file:feature:/dev/myproject/target/myapp-1.0.jar > >> > > >>> > > >> > > >>> > Or something like that. > >> > > >>> > > >> > > >>> > > >> > > >>> > So how can we make it easier for people to install and try > Camel > >> > > >>> > examples in vanilla Apache Karaf containers? > >> > > >>> > And how can we make it easier for people to install their own > >> > > >>> > applications in vanilla Apache Karaf containers, > >> > > >>> > which uses features.xml file to declare their dependencies. > >> > > >>> > > >> > > >>> > And NO they do NOT want to use KAR files or some Karaf > specific. > >> > > Their > >> > > >>> > applications should be plain JARs > >> > > >>> > that can also run outside Karaf as well. > >> > > >>> > > >> > > >>> > > >> > > >>> > > >> > > >>> > > >> > > >>> > > >> > > >>> > > >> > > >>> > > >> > > >>> > -- > >> > > >>> > Claus Ibsen > >> > > >>> > ----------------- > >> > > >>> > Red Hat, Inc. > >> > > >>> > FuseSource is now part of Red Hat > >> > > >>> > Email: [email protected] > >> > > >>> > Web: http://fusesource.com > >> > > >>> > Twitter: davsclaus > >> > > >>> > Blog: http://davsclaus.com > >> > > >>> > Author of Camel in Action: http://www.manning.com/ibsen > >> > > >>> > > >> > > >>> > >> > > >>> > >> > > >>> > >> > > >>> -- > >> > > >>> > >> > > >>> Apache Karaf <http://karaf.apache.org/> Committer & PMC > >> > > >>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> > >> > > Committer & > >> > > >>> Project Lead > >> > > >>> OPS4J Pax for Vaadin < > >> > > http://team.ops4j.org/wiki/display/PAXVAADIN/Home> > >> > > >>> Commiter & Project Lead > >> > > >>> blog <http://notizblog.nierbeck.de/> > >> > > >>> > >> > > >> > >> > > >> > >> > > >> > >> > > >> -- > >> > > >> ------------------------ > >> > > >> Guillaume Nodet > >> > > >> ------------------------ > >> > > >> Blog: http://gnodet.blogspot.com/ > >> > > >> ------------------------ > >> > > >> FuseSource, Integration everywhere > >> > > >> http://fusesource.com > >> > > > > >> > > > > >> > > > > >> > > > -- > >> > > > Claus Ibsen > >> > > > ----------------- > >> > > > Red Hat, Inc. > >> > > > FuseSource is now part of Red Hat > >> > > > Email: [email protected] > >> > > > Web: http://fusesource.com > >> > > > Twitter: davsclaus > >> > > > Blog: http://davsclaus.com > >> > > > Author of Camel in Action: http://www.manning.com/ibsen > >> > > > >> > > > >> > > > >> > > -- > >> > > Claus Ibsen > >> > > ----------------- > >> > > Red Hat, Inc. > >> > > FuseSource is now part of Red Hat > >> > > Email: [email protected] > >> > > Web: http://fusesource.com > >> > > Twitter: davsclaus > >> > > Blog: http://davsclaus.com > >> > > Author of Camel in Action: http://www.manning.com/ibsen > >> > > > >> > > >> > > >> > > >> > -- > >> > Charles Moulliard > >> > Apache Committer / Sr. Enterprise Architect (RedHat) > >> > Twitter : @cmoulliard | Blog : http://cmoulliard.blogspot.com > >> > > >> > >> > >> > >> -- > >> ------------------------ > >> Guillaume Nodet > >> ------------------------ > >> Blog: http://gnodet.blogspot.com/ > >> ------------------------ > >> FuseSource, Integration everywhere > >> http://fusesource.com > >> > > > > > > > > -- > > Charles Moulliard > > Apache Committer / Sr. Enterprise Architect (RedHat) > > Twitter : @cmoulliard | Blog : http://cmoulliard.blogspot.com > > > > -- > Claus Ibsen > ----------------- > Red Hat, Inc. > FuseSource is now part of Red Hat > Email: [email protected] > Web: http://fusesource.com > Twitter: davsclaus > Blog: http://davsclaus.com > Author of Camel in Action: http://www.manning.com/ibsen > -- Charles Moulliard Apache Committer / Sr. Enterprise Architect (RedHat) Twitter : @cmoulliard | Blog : http://cmoulliard.blogspot.com
