Are you experiencing some sort of issue? For example, do you have a resource in a repository registered as a service but it's not being found by subsystems? Your setup looks okay. In terms of getting subsystems to interact with these services, all you need to do is ensure they're registered.
The standard interactions between subsystems and other spec'd services such as resolver and repository are defined in the OSGi Enterprise R5 specification which may be found here: http://www.osgi.org/Specifications/HomePage. You may also find additional information in the Javadoc here: http://www.osgi.org/javadoc/r5/enterprise/. In a nutshell, when installing a subsystem, the implementation will use the felix resolver service (or the first resolver service it receives) to calculate dependencies. It will then search for resources that provide any missing dependencies using rules defined in the spec. As a gross generalization, these rules are (1) look for resources in the local repository (i.e. resources provided as part of the subsystem archive), (2) look for resources in the system repository (i.e. already installed resources) that provide dependencies in keeping with the isolation policy (this repository is not registered as a service but an internal implementation detail), (3) look for resources in registered repository services in service ranking order. For (3), the first repository providing a resource with a matching capability wins. Hope this helps. John > > Subject > > WG: Interaction of Subsystem-, Resolver- and Repository Service > > Hi, > > I want to use the Aries Subsystem implementation in combination with > the Resolver- and Repository-Service. Actually, I don’t know how to > use the resolver and repo service from within my subsystem. I was > able to deploy and start bundles in an application- and feature > subsystem but in that case all necessary dependencies were available > in the OSGi runtime. For the resolver I’m using Felix (0.1.0- > SNAPSHOT) and for the repo impl JBoss(jbosgi-repository-3.0. > 0.Alpha2.jar). However, when I check the code of the JBoss impl, it > seems like it’s working only with Maven central and JBoss nexus. > Anyway, I have no clue what to do that my subsystem interacts with > the resolver- and rep –service. If I check the service usage via > osgi shell, it seems that the subsystem impl has found all other services: > > g! inspect req service 56 > org.apache.aries.subsystem_1.0.0.SNAPSHOT [56] require: > -------------------------------------------------------- > service; > org.apache.aries.application.modelling.ModelledResourceManager provided by: > org.apache.aries.application.modeller_1.0.0 [52] > service; org.osgi.service.coordinator.Coordinator provided by: > org.eclipse.equinox.coordinator_1.1.0.v20120522-1841 [73] > service; org.jboss.osgi.repository.XRepository, > org.osgi.service.repository.Repsitory provided by: > jbosgi-repository_3.0.0.Alpha2 [24] > service; org.eclipse.equinox.region.RegionDigraph provided by: > org.eclipse.equinox.region_1.1.0.v20120522-1841 [74] > service; org.osgi.service.coordinator.Coordinator provided by: > org.eclipse.equinox.coordinator_1.1.0.v20120522-1841 [73] > service; org.osgi.service.resolver.Resolver provided by: > org.apache.felix.resolver_0.1.0.r1400257 [69] > service; org.jboss.osgi.repository.XRepository, > org.osgi.service.repository.Repsitory provided by: > jbosgi-repository_3.0.0.Alpha2 [24] > > Furthermore, I want to use my own R5 compliant repo. For that I > found RepoIndex which generates repository indexes (index.xml) > compliant to R5. But I have no idea to configure the repo service to > use my repository. I guess the latter point should be posted in the > JBoss Forum but it would be nice if someone can point me to a manual > or something like that which explains how the interaction between > the subsystem service and all these other services works. > > Thanks in advance > > Cheers > > Christian Berger > > My current setup: > > org.apache.aries.application.api-1.0.0.jar > org.apache.aries.application.modeller-1.0.0.jar > org.apache.aries.application.utils-1.0.0.jar > org.apache.aries.blueprint-1.0.0.jar > org.apache.aries.proxy-1.0.1-20121031.092805-46.jar > org.apache.aries.subsystem-1.0.0-SNAPSHOT.jar > org.apache.aries.util-1.1.0-SNAPSHOT.jar > org.apache.felix.resolver-0.1.0-20121019.195943-6.jar > org.eclipse.equinox.coordinator-1.1.0.v20120522-1841.jar > org.eclipse.equinox.region-1.1.0.v20120522-1841.jar > osgi.enterprise-5.0.0.jar > jbosgi-repository-3.0.0.Alpha2.jar > jboss-logging-3.1.2.GA.jar > org.eclipse.osgi_3.8.1.v20120830-144521
