Hi,

How do I get camel features automatically installed by a feature xml.

In my scenario, I am creating my own Karaf feature xml to install all dependent 
bundles before my bundles can be started. From what I observe, few camel 
features such as camel-core, camel-http4, camel-jackson are installed while 
camel-blueprint does not get installed, this eventually cause an issue starting 
my bundle.

Here is a simplified example.

1. Generate maven project
mvn archetype:generate \
-DarchetypeGroupId=org.apache.karaf.archetypes \
-DarchetypeArtifactId=karaf-feature-archetype \
-DarchetypeVersion=4.0.1 \
-DgroupId=com.acme.mediation \
-DartifactId=acme-mediation \
-Dversion=1.3.0-SNAPSHOT \
-Dpackage=com.acme.mediation \
-DinteractiveMode=false

2. Create feature xml as follow
[build@localhost EIP]$ cat acme-mediation/src/main/feature/feature.xml 
<?xml version="1.0" encoding="UTF-8"?>
<features name="${project.artifactId}-${project.version}" 
xmlns="http://karaf.apache.org/xmlns/features/v1.0.0";>
        
<repository>mvn:org.apache.camel.karaf/apache-camel/2.15.2/xml/features</repository>
    <feature name='${project.artifactId}-common' description='${project.name}' 
version='${project.version}'>
        <details>${project.description}</details>
        <feature version="2.15.2" prerequisite="true" 
dependency="true">camel</feature>
        <feature version="2.15.2" prerequisite="true" 
dependency="true">camel-blueprint</feature>
        <feature version="2.15.2" prerequisite="true" 
dependency="true">camel-jdbc</feature>
        <feature version="2.15.2" prerequisite="true" 
dependency="true">camel-http4</feature>
        <feature version="2.15.2" prerequisite="true" 
dependency="true">camel-jackson</feature>
    </feature>
</features>

3. Add following to pom.xml (I am using Nexus as MRM)
    <distributionManagement>
        <snapshotRepository>
            <id>snapshots</id>
            
<url>http://localhost:8081/nexus/content/repositories/snapshots</url>
        </snapshotRepository>
    </distributionManagement>

4. Deploy the feature
mvn deploy

5. Install the feature in karaf (4.0.1)
dev@ubuntu:~/apache-karaf-4.0.1$ bin/karaf
karaf@root()> feature:repo-add 
mvn:com.acme.mediation/acme-mediation/1.3.0-SNAPSHOT/xml/features
karaf@root()> feature:install acme-mediation-common
karaf@root()> feature:list -i
Name                                    | Version                       | 
Required | State   | Repository                    | Description
-------------------------------------------------------------------------------------------------------------------------------------------------
acme-mediation-common   | 1.3.0.SNAPSHOT        | x        | Started | 
acme-mediation-1.3.0-SNAPSHOT | acme-mediation-feature
aries-proxy                     | 4.0.1                         |          | 
Started | standard-4.0.1                | Aries Proxy
aries-blueprint                 | 4.0.1                         | x        | 
Started | standard-4.0.1                | Aries Blueprint
feature                                 | 4.0.1                         | x     
   | Started | standard-4.0.1                | Features Support
shell                                   | 4.0.1                         | x     
   | Started | standard-4.0.1                | Karaf Shell
shell-compat                    | 4.0.1                         | x        | 
Started | standard-4.0.1                | Karaf Shell Compatibility
deployer                        | 4.0.1                         | x        | 
Started | standard-4.0.1                | Karaf Deployer
bundle                                  | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide Bundle support
config                                  | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide OSGi ConfigAdmin support
diagnostic                      | 4.0.1                         | x        | 
Started | standard-4.0.1                | Provide Diagnostic support
instance                                | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide Instance support
jaas                                    | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide JAAS support
log                                     | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide Log support
package                                 | 4.0.1                         | x     
   | Started | standard-4.0.1                | Package commands and mbeans
service                                 | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide Service support
system                                  | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide System support
kar                                     | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide KAR (KARaf archive) 
support
ssh                                     | 4.0.1                         | x     
   | Started | standard-4.0.1                | Provide a SSHd server on Karaf
management                      | 4.0.1                         | x        | 
Started | standard-4.0.1                | Provide a JMX MBeanServer and a set 
of MBeans in
wrap                                    | 0.0.0                         | x     
   | Started | standard-4.0.1                | Wrap URL handler
spring-dm                       | 1.2.1                         |          | 
Started | spring-4.0.1                  | Spring DM support
spring                                  | 3.2.14.RELEASE_1      |          | 
Started | spring-4.0.1                  | Spring 3.2.x support
spring-tx                               | 3.2.14.RELEASE_1      |          | 
Started | spring-4.0.1                  | Spring 3.2.x Transaction (TX) support

* In this simplified example, I don’t get any of the specified camel features 
installed even when I specified it in my feature xml.

Thanks and regards,
Ravi Nallappan

Reply via email to