1

これは一般的な機能である必要がありますが、私はそれを見つけることができないようです。私には次のような流れがあります。

   <inbound-endpoint.../>
   <collection-splitter.../>
   <custom component.../>
   ...

カスタムコンポーネントが、それ以上のアクションなしで破棄したいメッセージを受信した場合、それはどのように実行されますか?コレクションの残りの要素の処理を中止したくありません。1つのアイテムだけです。

今のところ、コンポーネントがnullを返し、それに続いてpayload-type-filterがありますが、それは不器用なようです。

4

2 に答える 2

2

その場合、コンポーネントをインターセプターに変換します。コンポーネントは、ダウンストリーム処理のために現在の Mule イベントを転送するかどうかを決定します。

このためには、実装する必要がありますorg.mule.api.interceptor.Interceptor

詳細については、次を参照してください: http://www.mulesoft.org/documentation/display/current/Using+Interceptors#UsingInterceptors-WritingInterceptors

于 2013-03-04T18:06:40.560 に答える
0

Mule 3 フローではメッセージ フィルタを使用する必要があります。MuleEventContext の setStopFurtherProcessing は、Mule 3 フローではサポートされていません。

<message-filter doc:name="Message">
   <not-filter>
      <payload-type-filter expectedType="org.mule.transport.NullPayload"></payload-type-filter>
  </not-filter>
</message-filter>
于 2013-06-11T10:14:25.377 に答える