On 08/08/2011 14:56, Greg Dritschler wrote:
I have the following test case:

Composite A:
   - is deployable
   - has a component reference with a reference target pointing to some 
top-level component outside of A
   - does not promote the component reference

Composite B:
  - is deployable
  - reuses composite A as the implementation of a component

B fails because, when A is used within the context of B, the reference target 
is not found within A.
I think it is correct that this is an error, but given some of the discussion 
lately about
implementation.composite, I'd like a second opinion.

Assembly says
1880 For a composite used as a component implementation, wires can only link 
sources and targets
that are
1881 contained in the same composite

The error happens to be discovered at the time the reference is invoked (from 
within the context of B).
"Unable to bind [] - No endpoints found in the domain that match the reference"

It seems like it could be detected at build time.

Greg
Greg,

Its an error.

If you have a component reference with a target which is a component service of a second component which is not in the composite of the first component, the only way that this reference can be satisifed is by some form of "include" processing which adds the target component to the context of the first component. This simply can't happen when the composite is used as an implementation - it could happen for a composite deployed directly to the Domain.


Yours,  Mike.

Reply via email to