1

問題のステートメントは、複数のことを並行して実行し、応答を集計してファイルに保存することです。

スタジオのようにミュールフロー画像へのリンク: 画像

このフローで私がやろうとしていたのは、スキャッターとギャザーとアグリゲートとファイルへの保存の 2 つのブランチに 2 つの定数文字列を設定することでした。「my response」でペイロードを「セットペイロード」に上書きしてみました。ファイルの内容として「私の応答」を期待しています。ただし、代わりにファイルの内容は次のとおりです。

¨Ìsr)java.util.concurrent.CopyOnWriteArrayListx]ü'F´ê√xpwtmsg 1tmsg 2x

私はデバッグを行い、File エンドポイントのペイロードは「私の応答」でした。コレクションがファイルに書き込まれる方法と理由。

誰でも私がそれを機能させるのを手伝ってくれますか? xml は次のとおりです。

<flow name="mule-assignFlow21123">
        <quartz:inbound-endpoint jobName="dummyflow" repeatInterval="10000" responseTimeout="10000" doc:name="Quartz">
            <quartz:event-generator-job/>
        </quartz:inbound-endpoint>
        <scatter-gather doc:name="Scatter-Gather1" >
            <threading-profile maxThreadsActive="1" poolExhaustedAction="RUN"/>
            <processor-chain>
                <set-payload value="msg 1" doc:name="Set Payload"/>
                <logger level="INFO" doc:name="Logger"/>
            </processor-chain>
            <processor-chain>
                <set-payload value="msg 2" doc:name="Set Payload"/>
                <logger level="INFO" doc:name="Logger"/>
            </processor-chain>
        </scatter-gather>
        <set-payload value="my response" doc:name="Set Payload"/>
        <file:outbound-endpoint path="/Users/premkumar/Desktop" outputPattern="Results.txt" responseTimeout="10000" mimeType="text/plain" doc:name="Save 2 File"/>
    </flow>

4

1 に答える 1

1

processingStrategyフローは、クオーツ エンドポイントのために非同期になる実行中のイベントから自動的に決定するため、ファイル エンドポイントも非同期で起動します。

代わりに、フローを次のように明示的に設定processingStrategysynchronousます。

<flow name="mule-assignFlow21123" processingStrategy="synchronous">
<quartz:inbound-endpoint jobName="dummyflow" repeatInterval="10000" responseTimeout="10000" doc:name="Quartz">
    <quartz:event-generator-job/>
</quartz:inbound-endpoint>
<scatter-gather doc:name="Scatter-Gather1" >
    <threading-profile maxThreadsActive="1" poolExhaustedAction="RUN"/>
    <processor-chain>
        <set-payload value="msg 1" doc:name="Set Payload"/>
        <logger level="INFO" doc:name="Logger"/>
    </processor-chain>
    <processor-chain>
        <set-payload value="msg 2" doc:name="Set Payload"/>
        <logger level="INFO" doc:name="Logger"/>
    </processor-chain>
</scatter-gather>
<set-payload value="my response" doc:name="Set Payload"/>
<file:outbound-endpoint path="/Users/premkumar/Desktop" outputPattern="Results.txt" responseTimeout="10000" mimeType="text/plain" doc:name="Save 2 File"/>

于 2015-11-20T15:23:38.133 に答える