[ 
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)

Reply via email to