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

Reply via email to