Mule-在集合拆分后发送SFTP出站消息

Mule-在集合拆分后发送SFTP出站消息,mule,sftp,outbound,Mule,Sftp,Outbound,我正在使用集合拆分器拆分我的列表。现在,我应该如何将有效负载设置为SFTP出站端点 <sftp:inbound-endpoint connector-ref="sftp-inbound" host="${SFTP_HOST}" port="${SFTP_PORT}" path="/files/" user="${SFTP_USER}" password="${SFTP_PASS}" responseTimeout="10000" poll

我正在使用集合拆分器拆分我的列表。现在,我应该如何将有效负载设置为SFTP出站端点

        <sftp:inbound-endpoint connector-ref="sftp-inbound" host="${SFTP_HOST}" port="${SFTP_PORT}" 
        path="/files/" user="${SFTP_USER}" password="${SFTP_PASS}" 
        responseTimeout="10000" pollingFrequency="30000" fileAge="20000" sizeCheckWaitTime="5000" 
        archiveDir="/files/archive/" doc:name="SFTP"  >
             <file:filename-regex-filter pattern="Test(.*).zip" caseSensitive="true"/>
        </sftp:inbound-endpoint>

        <set-variable variableName="regexVal" value="${REGEX}" doc:name="Variable"/>
        <set-variable variableName="sourceFileName" value="#[flowVars.originalFilename]" doc:name="Variable"/>

        <custom-transformer name="zipTxt" class="com.mst.transform.UnzipTransformer" doc:name="Java" mimeType="image/gif">
            <spring:property name="filenamePattern" value="*.csv,*.txt" />
        </custom-transformer>

        <set-variable variableName="fileContents" value="#[payload]" />

        <collection-splitter enableCorrelation="IF_NOT_SET" />

        <logger message="#[payload]" level="INFO" doc:name="Logger"/>

        <sftp:outbound-endpoint connector-ref="sftp-inbound" 
            host="${SFTP_HOST}" port="${SFTP_PORT}" 
            path="/files/" user="${SFTP_USER}" password="${SFTP_PASS}"  
            responseTimeout="10000" doc:name="SFTP" 
            exchange-pattern="one-way"/>

 </flow>


如果收集拆分器之前的有效负载是SFTP出站端点(如InputStream)可以使用的对象列表,那么在拆分器之后,可以将logger、SFTP包装在处理器链中。拆分器会将每个对象逐个发送到处理器链。如果它是InputsRAM,SFTP应该能够写入它

<collection-splitter enableCorrelation="IF_NOT_SET" />

<processor-chain doc:name="Processor Chain">
        <logger message="#[payload]" level="INFO" doc:name="Logger"/>

        <sftp:outbound-endpoint connector-ref="sftp-inbound" 
            host="${SFTP_HOST}" port="${SFTP_PORT}" 
            path="/files/" user="${SFTP_USER}" password="${SFTP_PASS}"  
            responseTimeout="10000" doc:name="SFTP" 
            exchange-pattern="one-way"/>
</processor-chain>

如果您只想在拆分器之后放置一个处理器(如SFTP),则不需要处理器链


如果这不起作用,请将错误详细信息添加到问题中。

如果收集拆分器之前的负载是SFTP出站端点(如InputStream)可以使用的对象列表,那么在拆分器之后,您可以将logger、SFTP包装到处理器链中。拆分器会将每个对象逐个发送到处理器链。如果它是InputsRAM,SFTP应该能够写入它

<collection-splitter enableCorrelation="IF_NOT_SET" />

<processor-chain doc:name="Processor Chain">
        <logger message="#[payload]" level="INFO" doc:name="Logger"/>

        <sftp:outbound-endpoint connector-ref="sftp-inbound" 
            host="${SFTP_HOST}" port="${SFTP_PORT}" 
            path="/files/" user="${SFTP_USER}" password="${SFTP_PASS}"  
            responseTimeout="10000" doc:name="SFTP" 
            exchange-pattern="one-way"/>
</processor-chain>

如果您只想在拆分器之后放置一个处理器(如SFTP),则不需要处理器链


如果这不起作用,那么请在问题中添加错误详细信息。

您能否提供更多关于您在这里试图实现的目标的详细信息?您希望您的出站有效负载是什么样子的?您对上述方法有什么问题?您能否提供更多关于您在这里试图实现的目标的详细信息?您希望您的出站有效负载是什么样子的?您对上述方法有什么问题?