Hi. An update. When I changed by namespace to v1.2.0, it worked exactly
as I had hoped. For those scoring at home, I changed the declaration of my
features.xml file to look like this:
<features name="${project.artifactId}-${project.version}" xmlns="
http://karaf.apache.org/xmlns/features/v1.2.0">
<repository>mvn:org.apache.cxf.karaf/apache-cxf/3.1.0/xml/features</repository>
Once I did that, I could install the cxf feature as part of my own. Again,
exactly what I was after.
Thanks heaps for the help!
Ed
On Thu, Jul 2, 2015 at 10:06 PM, Ed Hillmann <[email protected]> wrote:
> Hi. Thanks for the feedback. I actually had it at 1.0 originally, but
> then tried 1.3 for no reason. I'll try 1.2 and see if that makes a
> difference. Thanks again for the nudge in the right direction. I'll let
> you know how I go
>
> On Thu, Jul 2, 2015 at 5:02 PM, Achim Nierbeck <[email protected]>
> wrote:
>
>> Hi,
>>
>> you're doing it right, this is the prefered way of referencing another
>> feature in your own feature.
>> With Karaf 4 we have a new feature-resolver in place which actually works
>> as the bundle resolver.
>> This resolver does a far more strict lookup of the resources to be
>> installed, as it doesn't do you any good to install a bunch of bundles
>> which can't be started anyway because of a missing service etc..
>>
>> Now with your current scenario I'd say we might have an issue with the
>> cxf feature as it doesn't seem to provide some necessary information.
>> I suspect this to be because of a mixture of "feature-versions". So
>> unless you require some new functionalities of the 1.3 namespace try to
>> downgrade your own namespace version to v1.2.0. Cause for Namespaces lower
>> 1.3.0 this new resolving is disabled and it'll just install those features
>> without checking if everything is in place.
>>
>> regards, Achim
>>
>>
>>
>> 2015-07-02 6:22 GMT+02:00 Ed Hillmann <[email protected]>:
>>
>>> Alternatively, I've tried to define the repo / feature to be started at
>>> boot time, by editing org.apache.karaf.features.cfg. But that didn't seem
>>> to help.
>>>
>>> ?
>>>
>>>
>>> ---------- Forwarded message ----------
>>> From: Ed Hillmann <[email protected]>
>>> Date: Thu, Jul 2, 2015 at 1:58 PM
>>> Subject: In 4.0.0, can my features.xml install another repository?
>>> To: [email protected]
>>>
>>>
>>> Hi. I have a features.xml that defined my bundles. My bundles in turn
>>> use code provided from the apache-cxf project. To date, in order to set up
>>> my karaf instance, I have
>>>
>>> - At the console, used feature:repo-add to add the cxf repository
>>> ("repo-add cxf")
>>> - At the console, used feature:repo-add to add my own features.xml from
>>> a mvn address
>>> - At the console, used feature:install to install my bundles. In my
>>> bundles, I have listed <feature version="3.1.0">cxf</feature>
>>>
>>> This all works. However, I was hoping I could skip the first step. So,
>>> instead of manually installing the cxf repo, have it defined as part of my
>>> features.xml. It looks like it is possible, at the schema supports it.
>>> So, at the head of my features file, it looks like this...
>>>
>>>
>>> <features name="${project.artifactId}-${project.version}" xmlns="
>>> http://karaf.apache.org/xmlns/features/v1.3.0">
>>>
>>>
>>> <repository>mvn:org.apache.cxf.karaf/apache-cxf/3.1.0/xml/features</repository>
>>>
>>>
>>>
>>> The hope was that now I could just repo-add my own features.xml file,
>>> and the act of installing my feature would in turn add the cxf repo. But,
>>> that's not happening. When I attempt to feature:install my bundles (which
>>> depend on cxf), I get this error:
>>>
>>> Error executing command: Unable to resolve root: missing requirement
>>> [root] osgi.identity; osgi.identity=cxf; type=karaf.feature; version=3.1.0
>>>
>>> I dare say that, if I manually add the cxf repo, this will then work
>>> fine.
>>>
>>> Should this work? If so, am I doing something wrong? Is there another
>>> command I should be running?
>>>
>>> Thanks for any help,
>>> Ed
>>>
>>>
>>>
>>
>>
>> --
>>
>> Apache Member
>> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer
>> & Project Lead
>> blog <http://notizblog.nierbeck.de/>
>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>
>>
>> Software Architect / Project Manager / Scrum Master
>>
>>
>