【问题标题】:Copy and rename a file with mule使用 mule 复制和重命名文件
【发布时间】:2013-09-23 08:47:50
【问题描述】:

我正在尝试设置一个包含两个流程的 mule 应用程序。

将文件从 ftp 检索到本地文件夹。 另一个轮询同一个文件夹并将文件上传到另一个 FTP 服务器并复制 来自另一个本地文件夹的文件,将复制的文件重命名为与“FTP文件”相同的文件名,但具有另一个扩展名,并将其上传到同一个FTP服务器。

我尝试使用传入文件名设置一个变量,但我不知道如何 复制模板文件并将其从本地文件夹重命名,如下面的流程所示。

感谢任何帮助!

【问题讨论】:

    标签: file ftp copy mule


    【解决方案1】:

    您可以使用变量名在文件端点上设置outputPattern 属性。

    【讨论】:

    • 我无法正常工作。我想要做的是在模板文件夹中有一个文件,当文件出现在流中时,该文件将与模板文件夹中的文件一起传输到输出 FTP 服务器,该文件重命名为传入文件的文件名,但使用新的延期。如何通过传入的文件传输触发复制?
    • 在这种情况下不要使用文件端点,编写一个java组件来获取文件内容+删除文件并传递给FTP
    【解决方案2】:

    文件端点具有用于此目的的属性。

    <file:outbound-endpoint path="${destination_path}"  outputPattern="[new filename to be given to the file ]"  doc:name="File" >
    </file:outbound-endpoint>
    

    在 FTP 端点上,也可以将 outputPattern 属性设置为所需的文件名。

    <ftp:outbound-endpoint host="localhost" port="21" responseTimeout="10000" doc:name="FTP" outputPattern="test.xml"/>
    

    希望这会有所帮助。

    【讨论】:

    • 感谢您的帖子,但我想我需要更多帮助。我想做的是在文件进入流程时从文件夹中触发副本并重命名模板文件,以便可以将此复制的文件与传入的文件一起上传到 FTP 服务器。如果传入文件是 [TEST112211.xml] 传输到 FTP 服务器的文件应该是 [TEST112211.xml] 和 [TEST112211.imp]。 imp 文件是读取 xml 文件的服务的导入指令。
    • 对于您在评论中提到的问题,自定义转换器应该可以达到目的。您可以使用自定义转换器从模板文件夹中读取文件,然后通过 ftp 出站将其写入 FTP 文件夹。应该从正在读取主文件的主流程中调用此自定义转换器和 FTP 流程。
    猜你喜欢
    • 2022-01-09
    • 2021-07-21
    • 2016-03-25
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    • 2016-11-01
    • 2018-04-21
    • 1970-01-01
    相关资源
    最近更新 更多