You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@aries.apache.org by Jeroen Baekelandt <yr...@gmail.com> on 2015/04/03 13:41:54 UTC

Nested Subsystem gets ResolutionException

Hi,

We have an esa with following structure:

--- service-user-subsystem-0.0.1-SNAPSHOT.esa
------ OSGI-INF/SUBSYSTEM.MF
------ service-subsystem-0.0.1-SNAPSHOT.esa
--------- OSGI-INF/SUBSYSTEM.MF
--------- service-0.0.1-SNAPSHOT.jar
------ service-user-0.0.1-SNAPSHOT.jar

The service bundle exports a package (be.aca.service.api), which is
imported by service-user bundle.

The service-user-subsystem esa is fully self-contained (i.e. its zip
file is structured as displayed above).

When we subsystem:install it in Felix, with aries and
subsystem-gogo-shell installed, then we get following error:

g! subsystem:install
file:../../service-user-subsystem/target/service-user-subsystem-0.0.1-SNAPSHOT.esa

Installing subsystem:
file:../../service-user-subsystem/target/service-user-subsystem-0.0.1-SNAPSHOT.esa

gogo: SubsystemException: org.osgi.service.resolver.ResolutionException:
Unable to resolve
/D:/isabel/WORKSP~1/tmp/inputStreamExtract2434004331602758506.zip/service-user-0.0.1-SNAPSHOT.jar:
missing requirement
org.apache.aries.subsystem.core.archive.ImportPackageRequirement:
namespace=osgi.wiring.package, attributes={},
directives={filter=(&(osgi.wiring.package=be.aca.service.api)(&(version>=0.0.0)(!(version>=1.0.0))))},
resource=/D:/isabel/WORKSP~1/tmp/inputStreamExtract2434004331602758506.zip/service-user-0.0.1-SNAPSHOT.jar


What are we missing?

This complete example can be found on
https://github.com/timv2/OSGISubsystemTest/tree/embeddedEsa, with a
simple README.md you can follow to reproduce this.

Thanks for any help!

Jeroen

Re: Nested Subsystem gets ResolutionException

Posted by Jeroen Baekelandt <yr...@gmail.com>.
This is the SUBSYSTEM.MF of service-user-subsystem-0.0.1-SNAPSHOT.esa
(the outer, all-including esa):
-------------------------------------
Subsystem-ManifestVersion: 1
Subsystem-SymbolicName: be.aca.service-user-subsystem
Subsystem-Version: 0.0.1.SNAPSHOT
Subsystem-Name: service-user-subsystem
Subsystem-Description: OSGi subsystem support
Subsystem-Content:
be.aca.service-subsystem;type="osgi.subsystem.feature";version="[0.0.1.SNAPSHOT,0.0.1.SNAPSHOT]";start-order:="1",be.aca.service-user;version="[0.0.1.SNAPSHOT,0.0.1.SNAPSHOT]";start-order:="2"
Subsystem-Type: osgi.subsystem.feature
-------------------------------------

This is the one of the inner service-subsystem-0.0.1-SNAPSHOT.esa:
-------------------------------------
Subsystem-ManifestVersion: 1
Subsystem-SymbolicName: be.aca.service-subsystem
Subsystem-Version: 0.0.1.SNAPSHOT
Subsystem-Name: service-subsystem
Subsystem-Description: OSGi subsystem support
Subsystem-Content:
be.aca.service;version="[0.0.1.SNAPSHOT,0.0.1.SNAPSHOT]";start-order:="1"
Subsystem-Type: osgi.subsystem.feature
-------------------------------------

For the poms, it's probably best to have a look in the github repo
(https://github.com/timv2/OSGISubsystemTest/tree/embeddedEsa).

Thanks!

Jeroen


On Fri, Apr 3, 2015, at 13:41, Jeroen Baekelandt wrote:
> Hi,
> 
> We have an esa with following structure:
> 
> --- service-user-subsystem-0.0.1-SNAPSHOT.esa
> ------ OSGI-INF/SUBSYSTEM.MF
> ------ service-subsystem-0.0.1-SNAPSHOT.esa
> --------- OSGI-INF/SUBSYSTEM.MF
> --------- service-0.0.1-SNAPSHOT.jar
> ------ service-user-0.0.1-SNAPSHOT.jar
> 
> The service bundle exports a package (be.aca.service.api), which is
> imported by service-user bundle.
> 
> The service-user-subsystem esa is fully self-contained (i.e. its zip
> file is structured as displayed above).
> 
> When we subsystem:install it in Felix, with aries and
> subsystem-gogo-shell installed, then we get following error:
> 
> g! subsystem:install
> file:../../service-user-subsystem/target/service-user-subsystem-0.0.1-SNAPSHOT.esa
> 
> Installing subsystem:
> file:../../service-user-subsystem/target/service-user-subsystem-0.0.1-SNAPSHOT.esa
> 
> gogo: SubsystemException: org.osgi.service.resolver.ResolutionException:
> Unable to resolve
> /D:/isabel/WORKSP~1/tmp/inputStreamExtract2434004331602758506.zip/service-user-0.0.1-SNAPSHOT.jar:
> missing requirement
> org.apache.aries.subsystem.core.archive.ImportPackageRequirement:
> namespace=osgi.wiring.package, attributes={},
> directives={filter=(&(osgi.wiring.package=be.aca.service.api)(&(version>=0.0.0)(!(version>=1.0.0))))},
> resource=/D:/isabel/WORKSP~1/tmp/inputStreamExtract2434004331602758506.zip/service-user-0.0.1-SNAPSHOT.jar
> 
> 
> What are we missing?
> 
> This complete example can be found on
> https://github.com/timv2/OSGISubsystemTest/tree/embeddedEsa, with a
> simple README.md you can follow to reproduce this.
> 
> Thanks for any help!
> 
> Jeroen

Re: Nested Subsystem gets ResolutionException

Posted by Kamesh Sampath <ka...@liferay.com>.
Can you please post your SUBSYSTEM.MF and the pom.xml which generates the Esa ?



On 03/04/15 5:11 pm, "Jeroen Baekelandt" <yr...@gmail.com> wrote:

>Hi,
>
>We have an esa with following structure:
>
>--- service-user-subsystem-0.0.1-SNAPSHOT.esa
>------ OSGI-INF/SUBSYSTEM.MF
>------ service-subsystem-0.0.1-SNAPSHOT.esa
>--------- OSGI-INF/SUBSYSTEM.MF
>--------- service-0.0.1-SNAPSHOT.jar
>------ service-user-0.0.1-SNAPSHOT.jar
>
>The service bundle exports a package (be.aca.service.api), which is
>imported by service-user bundle.
>
>The service-user-subsystem esa is fully self-contained (i.e. its zip
>file is structured as displayed above).
>
>When we subsystem:install it in Felix, with aries and
>subsystem-gogo-shell installed, then we get following error:
>
>g! subsystem:install
>file:../../service-user-subsystem/target/service-user-subsystem-0.0.1-SNAPSHOT.esa
>
>Installing subsystem:
>file:../../service-user-subsystem/target/service-user-subsystem-0.0.1-SNAPSHOT.esa
>
>gogo: SubsystemException: org.osgi.service.resolver.ResolutionException:
>Unable to resolve
>/D:/isabel/WORKSP~1/tmp/inputStreamExtract2434004331602758506.zip/service-user-0.0.1-SNAPSHOT.jar:
>missing requirement
>org.apache.aries.subsystem.core.archive.ImportPackageRequirement:
>namespace=osgi.wiring.package, attributes={},
>directives={filter=(&(osgi.wiring.package=be.aca.service.api)(&(version>=0.0.0)(!(version>=1.0.0))))},
>resource=/D:/isabel/WORKSP~1/tmp/inputStreamExtract2434004331602758506.zip/service-user-0.0.1-SNAPSHOT.jar
>
>
>What are we missing?
>
>This complete example can be found on
>https://github.com/timv2/OSGISubsystemTest/tree/embeddedEsa, with a
>simple README.md you can follow to reproduce this.
>
>Thanks for any help!
>
>Jeroen