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.