Matt Jones created KARAF-4099:
---------------------------------
Summary: Karaf 4.0.2 with cave 4.0.0: obr:deploy not deploying
dependencies
Key: KARAF-4099
URL: https://issues.apache.org/jira/browse/KARAF-4099
Project: Karaf
Issue Type: Bug
Components: cave-repository, karaf-osgi
Affects Versions: 4.0.2
Environment: Windows 7 with java 1.8 running Karaf 4.0.2 and Cave 4.0.0
Reporter: Matt Jones
Karaf 4.0.2 using a Cave 4.0.0 repository is not installing the dependencies
for a bundle.
Here are the steps to reproduce. When I run this with Karaf 3.0.5 and Cave
3.0.0, it works.
1. Install Karaf 4.0.2
2. Ran feature:install obr
3. Ran feature:repo-add
mvn:org.apache.karaf.cave/apache-karaf-cave/4.0.0/xml/features
4. Ran feature:install cave-server
5. Created my cave repository: cave:repository-create acct_service
6. Uploaded 3 bundles, 1 implementation bundle, 1 API bundle, and 1 additional
dependency.
7. Viewed the repository.xml in the cave repository and everything looked good.
8. Ran obr:url-add with the repository.xml
9. Ran obr:url-refresh
10. Ran obr:list. I can see all three bundles.
11. Ran obr:deploy -s com.matt.accountservice.impl (this is the implementation
bundle that has the two other dependencies)
The obr:deploy command fails and gives me a message that I have unsatified
requirements. The two requirements that are missing show when I run the
obr:list command.
When I run obr:resolve, I get the following error in the logs:
java.lang.IllegalArgumentException
at
org.apache.felix.bundlerepository.impl.RequirementImpl.setFilter(RequirementImpl.java:101)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.felix.bundlerepository.impl.DataModelHelperImpl.requirement(DataModelHelperImpl.java:72)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.karaf.obr.command.ObrCommandSupport.parseRequirement(ObrCommandSupport.java:211)[130:org.apache.karaf.obr.core:4.0.2]
at
org.apache.karaf.obr.command.ObrCommandSupport.parseRequirements(ObrCommandSupport.java:217)[130:org.apache.karaf.obr.core:4.0.2]
at
org.apache.karaf.obr.command.ResolveCommand.doExecute(ResolveCommand.java:69)[130:org.apache.karaf.obr.core:4.0.2]
at
org.apache.karaf.obr.command.ObrCommandSupport.execute(ObrCommandSupport.java:58)[130:org.apache.karaf.obr.core:4.0.2]
at
org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:83)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:67)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:87)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94)[43:org.apache.karaf.shell.core:4.0.2]
at
org.apache.karaf.shell.impl.console.ConsoleSessionImpl.run(ConsoleSessionImpl.java:268)[43:org.apache.karaf.shell.core:4.0.2]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_60]
Caused by: org.osgi.framework.InvalidSyntaxException: Invalid operator: ):
(com.matt.accountservice.impl)
at
org.apache.felix.utils.filter.FilterImpl$Parser.parse_item(FilterImpl.java:1357)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.felix.utils.filter.FilterImpl$Parser.parse_filtercomp(FilterImpl.java:1233)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.felix.utils.filter.FilterImpl$Parser.parse_filter(FilterImpl.java:1198)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.felix.utils.filter.FilterImpl$Parser.parse(FilterImpl.java:1172)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.felix.utils.filter.FilterImpl.newInstance(FilterImpl.java:87)[129:org.apache.felix.bundlerepository:2.0.6]
at
org.apache.felix.bundlerepository.impl.RequirementImpl.setFilter(RequirementImpl.java:97)[129:org.apache.felix.bundlerepository:2.0.6]
... 16 more
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)