[
https://issues.apache.org/jira/browse/ARIES-1328?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14565321#comment-14565321
]
Thomas Watson commented on ARIES-1328:
--------------------------------------
Require-Capability is not a recognized header for applications. That is by
specification.
For resources in an application the subsystems impl is required to provision
all resources required to 'resolve' the resources at install time. By design
the subsystems specification treats all requirements as effective for
provisioning (I cannot recall exactly, it may only consider resolve and active
effectiveness).
When you add a Require-Capability for a non-existing service capability I would
not expect that to cause the subsystem to fail to resolve. Instead I expect
that to cause the subsystem to fail to install. This is one of the big
mistakes I think we made in the subsystems specification. The implementation
is required to provision all required resources at install time. If I could do
it over again I would have changed that to provision all the required content
at install time and then provision all the required resources (things that get
pulled in by the subsystem content requirements) during subsystem resolution.
> Application subsystem does not import services
> ----------------------------------------------
>
> Key: ARIES-1328
> URL: https://issues.apache.org/jira/browse/ARIES-1328
> Project: Aries
> Issue Type: Bug
> Components: Subsystem
> Affects Versions: subsystem-core-1.2.0
> Reporter: David Bosschaert
> Attachments: api-bundle-1.0.0-SNAPSHOT.jar,
> application-subsystem-nosvc-1.0.0-SNAPSHOT.esa,
> application-subsystem-nosvc-rc.esa, application-subsystem-nosvc-ubrc.esa,
> svc-bundle2-1.0.0-SNAPSHOT.jar, use-bundle-1.0.0-SNAPSHOT.jar
>
>
> I have an application Subsystem that has a bundle that looks for a service
> via a service tracker.
> This service and its API is provided by pre-existing bundles (api-bundle,
> svc-bundle2) in the parent subsystem.
> The OSGi enterprise R5 spec states in 134.16.1 (Application Subsystems):
> "Any required capabilities that are not satisfied by the application's
> constituents are automatically shared in (imported) from the parent
> Subsystem."
> However when I install and start the application subsystem
> (application-subsystem-nosvc), it does not find the services provided in the
> parent.
> I'm attaching the bundles and subsystem to reproduce. The full source code
> can be found here: https://github.com/coderthoughts/subsystem-examples
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)