关于mule的问题
晓筱时代 2009-09-15 10:40:10 mule的配置文件的部分内容如下:
<service name="OutboundBatchSplitterComp">
<inbound>
<vm:inbound-endpoint path="outboundBatchSplitterComp" connector-ref="asynchVm">
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.BatchMsg"/>
</vm:inbound-endpoint>
</inbound>
<pooled-component>
<spring-object bean="outboundBatchSplitterComp" />
</pooled-component>
<outbound>
<list-message-splitter-router failIfNoMatch="true">
<vm:outbound-endpoint path="outboundTransformer">
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.DocMsg"/>
</vm:outbound-endpoint>
<vm:outbound-endpoint path="outboundBatchAggregatorAdapter">
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.BatchMsg"/>
</vm:outbound-endpoint>
<payload-type-filter expectedType="java.util.List"/>
</list-message-splitter-router>
</outbound>
</service>
<service name="OutboundTransformerComp">
<inbound>
<vm:inbound-endpoint path="outboundTransformer" connector-ref="asynchVm">
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.DocMsg"/>
</vm:inbound-endpoint>
</inbound>
<pooled-component>
<spring-object bean="outboundTransformerComp" />
</pooled-component>
<outbound>
<filtering-router>
<vm:outbound-endpoint path="outboundBatchAggregatorAdapter" connector-ref="asynchVm"/>
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.DocMsg"/>
</filtering-router>
</outbound>
</service>
<service name="OutboundBatchAggregatorAdapter">
<inbound>
<vm:inbound-endpoint path="outboundBatchAggregatorAdapter" connector-ref="asynchVm">
<or-filter>
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.DocMsg"/>
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.BatchMsg"/>
</or-filter>
</vm:inbound-endpoint>
<collection-aggregator-router timeout="900000" failOnTimeout="true"/>
</inbound>
<outbound>
<filtering-router>
<vm:outbound-endpoint path="outboundBatchAggregator" connector-ref="asynchVm"/>
<payload-type-filter expectedType="java.util.List"/>
</filtering-router>
</outbound>
</service>
<service name="OutboundBatchAggregatorComp">
<inbound>
<vm:inbound-endpoint path="outboundBatchAggregator" connector-ref="asynchVm">
<payload-type-filter expectedType="java.util.List"/>
</vm:inbound-endpoint>
</inbound>
<pooled-component>
<spring-object bean="outboundBatchAggregatorComp" />
</pooled-component>
<outbound>
<filtering-router>
<vm:outbound-endpoint path="outboundTxnLogging" connector-ref="asynchVm"/>
<payload-type-filter expectedType="com.pracbiz.rob.echub.b2beai.message.BatchMsg"/>
</filtering-router>
</outbound>
</service>
mule启动以后,第一次消息转到OutboundBatchSplitterComp后,可以正确的执行, 并最终传到OutboundBatchAggregatorComp。
为什么第二次消息就只能到OutboundTransformerComp,始终到不了OutboundBatchAggregatorComp?