Folks,

Simple answer to Scott's questions:

On 26/07/2011 16:08, Scott Kurz wrote:
Trying to understand myself as the spec doesn't seem crystal clear...

I assume we'd agree also that the answer should be the same for this variation:

composite B with component C2

      <service name="S1Promoted" promote="C2">
          <binding.ws/>    <!-- Binding now specified on composite service -->
      </service>
       <component name="C2">
           <implementation.java class="..."/>
           <service name="S1">
               <binding.ws/>
           </service>
       </component>

In contrast, suppose we that composite A with component C1 did not
explicitly specify
<binding.sca>, e.g.:

     <component name="C1">
         <implementation.composite name="B"/>
         <service name="S1Promoted"/>
     </component>

Should this be<binding.ws>  then?

YES

Does it matter whether B's
composite-level service has the binding or not?

NO - if the component service has one or more bindings specified.
YES - if the component service has zero bindings specified.


Scott


To quote chapter & verse from the OASIS Assembly spec (line numbers for CD06):

770 ... If no
771 binding elements are specified for the service, then the bindings specified for the equivalent service in
772 the componentType of the implementation MUST be used, but if the 
componentType also has no
773 bindings specified, then <binding.sca/> MUST be used as the binding. If 
binding elements are
774 specified for the service, then those bindings MUST be used and they 
override any bindings specified
775 for the equivalent service in the componentType of the implementation. 
[ASM50005]


Yours,  Mike.

Reply via email to