João,
Hereby a working config file for your problem. I must say I didn't get it working with the replyTo in the multicasting router. Therefore I had to set synchronous=true on the endpoints of the multicasting-router. To send the response of the 'startpoint' service to the output-service-in, I used another chaining-router. For test purposes I created a component nl.endpoint.component.WrapMessageWithTag, which just wraps the message with an XML tag. In the example below I left out generic-service-component-2 through 4, but these are equivalent with generic-service-component-1.
<stdio:connector name="stdioConnector" promptMessage="Enter text"/>
<model name="Test">
<service name="entry-point-service">
<inbound>
<stdio:inbound-endpoint system="IN"
synchronous="false" connector-ref="stdioConnector"/>
</inbound>
<outbound>
<chaining-router>
<vm:outbound-endpoint path="startpoint" />
<vm:outbound-endpoint path="output-service-in" synchronous="true"/>
</chaining-router>
</outbound>
</service>
<service name="startpoint">
<inbound>
<vm:inbound-endpoint path="startpoint" synchronous="true"/>
</inbound>
<outbound>
<multicasting-router>
<vm:outbound-endpoint path="generic-service1-in" synchronous="true"/>
<vm:outbound-endpoint path="generic-service2-in" synchronous="true"/>
</multicasting-router>
</outbound>
</service>
<service name="generic-service1">
<inbound>
<vm:inbound-endpoint path="generic-service1-in" synchronous="true"/>
</inbound>
<outbound>
<chaining-router>
<vm:outbound-endpoint path="generic-service-component-1" />
<vm:outbound-endpoint path="generic-service-component-2" synchronous="true" />
</chaining-router>
</outbound>
</service>
<service name="generic-service2">
<inbound>
<vm:inbound-endpoint path="generic-service2-in" synchronous="true"/>
</inbound>
<outbound>
<chaining-router>
<vm:outbound-endpoint path="generic-service-component-3" />
<vm:outbound-endpoint path="generic-service-component-4" synchronous="true" />
</chaining-router>
</outbound>
</service>
<service name="output-service">
<inbound>
<vm:inbound-endpoint path="output-service-in" />
</inbound>
<outbound>
<pass-through-router>
<stdio:outbound-endpoint system="OUT" />
</pass-through-router>
</outbound>
</service>
<service name="generic-service-component-1">
<inbound>
<vm:inbound-endpoint path="generic-service-component-1" synchronous="true"/>
</inbound>
<component >
<singleton-object class="nl.endpoint.component.WrapMessageWithTag">
<property key="tag" value="generic-service-component-1"/>
</singleton-object>
</component>
</service>
</model>
Regards,
Mario
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email