“FTP 获取文件”活动

在运行时期间,FTP 获取文件活动连接到 FTP 服务器并尝试获取指定位置的单个文件。您可以配置 FTP 获取文件活动,以将文件内容返回到编排的变量中。此外,还可以配置 FTP 获取文件活动,以将 FTP 服务器返回的文件的时间戳记返回到编排的变量中。

FTP 获取文件活动在以下方面与 FTP 轮询目录活动不同:
  • FTP 获取文件活动不轮询指定目录中的一个或多个文件。而 FTP 获取文件活动检查一次文件,如果找不到文件,那么它会抛出异常,并且编排作业继续进行处理。
  • FTP 获取文件活动不是启动器活动,因此它不能是编排中的首个活动。
  • FTP 获取文件活动不移动或删除 FTP 服务器上的文件。

符号链接

FTP 获取文件活动在运行时期间对符号链接的支持取决于下列因素:
  • 托管 FTP 服务器的操作系统支持的符号链接类型。
  • FTP 服务器本身支持的符号链接类型。
  • FTP 获取文件活动支持的符号链接类型,如下表中所列:
    表 1.
    符号链接到... 硬符号链接 软符号链接 Notes®
    文件 不受支持 不受支持 FTP 获取文件活动不会将指向文件的符号链接解释为文件,因此在运行时期间指向文件的符号链接未通过 FTP 获取文件活动进行处理。
    目录 受支持 受支持  
要确定对特定操作系统上特定 FTP 服务器的特定符号链接支持,请参阅操作系统和 FTP 服务器文档。

在编排中添加“FTP 获取文件”活动

  1. 创建或打开编排。这样会以图形形式显示编排。
  2. 选择活动选项卡,并展开 FTP 文件夹。
  3. 获取文件活动拖至编排上。
  4. 选择该活动。这样会显示核对表

创建、选择或编辑 FTP 端点

  1. 单击核对表中的选取端点任务,然后选择下列操作之一:
    • 选择现有端点:
      1. 选择浏览。这样会显示 Project Explorer。
        注意: 指定与原始 FTP 端点具有不同目录结构的新 FTP 端点可导致编排作业在运行时期间失败。您必须指定与最初所指定 FTP 服务器的目录结构相匹配的新 FTP 服务器,或通过单击浏览来更改所在目录字段的已配置目录,如“配置活动”过程所述。
      2. 选择现有端点并单击确定。跳至“配置活动”过程。
    • 选择现有端点并编辑该端点:
      1. 选择浏览。这样会显示 Project Explorer。
      2. 选择现有端点并单击确定
        注意: 指定与原始 FTP 端点具有不同目录结构的新 FTP 端点可导致编排作业在运行时期间失败。您必须指定与最初所指定 FTP 服务器的目录结构匹配的新 FTP 服务器,或者通过按“配置活动”过程中所述单击浏览来更改所在目录字段的已配置目录。
      3. 单击编辑。这样会显示“编辑端点”窗格。
    • 创建新端点:选择新建。这样会显示“创建端点”窗格。
  2. 创建或编辑 FTP 端点:创建或编辑 FTP 端点

指定交付规则

  1. 核对表中选择交付规则任务。这样会显示“交付规则”窗格。如果未对 FTP 端点启用安全性,那么会启用以文本 (ASCII) 方式传输以二进制 (BINARY) 方式传输选项。如果已对 FTP 端点启用安全性,那么文件传输类型始终为二进制。
  2. 从下列选项之一中选择 Integration Appliance 和 FTP 服务器之间的文件传输类型:
    • 以文本 (ASCII) 方式传输 - 仅文件中各字符的七位会通过 Integration Appliance 传输到 FTP 服务器。此选项用于传输 ASCII 文件,如 HTML 和文本文件。
      警告:
      将此选项用于二进制文件会导致数据丢失。
    • 以二进制 (BINARY) 方式传输 - 文件中各字节的全部八位均会通过 Integration Appliance 传输到 FTP 服务器。此选项用于传输二进制文件。
    注: 在“传输规则”任务中设置传输方式与使用下列命令通过 FTP 服务器的命令行会话来设置传输方式等效:
    • ascii
    • binary
注: Cast Iron FTP 连接器 SFTP 端点仅支持客户端 SFTP 协议 V3。 因此,SFTP 协议不支持 ASCII/文本方式文件传输。确保在核对表 > 交付规则中将文件传输类型设置为作为二进制 (BINARY) 传输

配置活动

  1. 核对表中选择配置任务。这样会显示“配置”窗格。
  2. 配置此窗格中的所有字段,如下表所述:
    表 2.
    字段 描述
    文件名 此字段不用于此活动。通过使用映射输入任务的 filename 输入参数来指定输出文件的名称。
    源目录 指定 Integration Appliance 将此活动中生成的文件在 FTP 服务器上的放置目录。 您可以使用以下选项之一来指定目录:
    • 通过单击该字段并输入以下目录路径之一来直接输入目录路径:
      • 相对目录路径,例如:/output。(假定已为连接到 FTP 服务器的用户帐户配置了 FTP 主目录。请参阅“注释”以获取更多信息。)
      • 完整目录路径,例如在 UNIX 机器上:/home/user/output。
    • 单击浏览... 以填充可用目录的下拉列表。从下拉列表中选择相应的目录。
    注: UNIX:如果在连接到 UNIX 机器上的 FTP 服务器时指定相对目录路径,请验证是否已针对连接到 FTP 服务器的用户帐户在 /etc/password 文件中正确指定了 FTP 主目录。
    类型 指定如何读入文件的内容 - 以二进制数据或编码文本形式。如果选择了文本选项,请使用下列选项之一设置编码类型:
    • 编码类型下拉列表中选择其中一种缺省编码类型。
    • 通过在编码类型字段中单击,然后输入编码类型,直接输入编码类型。
     
    注意: 如果在以 ASCII 方式与 FTP 端点之间来回传输数据时针对操作文本数据的端点检索文本文件并将文本文件放置在 FTP 服务器上,那么必须为 FTP 活动指定以文本 (ASCII) 方式传输选项。例如,在以 ASCII 方式传递数据时,大型机和 DOS FTP 端点操作 ASCII 数据。
    例如,如果编排使用 FTP 轮询目录活动来检索 ASCII 文件并使用“FTP 放置文件”活动将 ASCII 文件放置到大型机 FTP 服务器,那么必须在 Studio 内的下列任务中指定选项:
    • FTP 轮询目录活动的配置任务中,针对类型字段选择文本选项。
    • FTP 轮询目录活动的交付规则任务中,针对文件传输类型字段选择以文本 (ASCII) 方式传输选项。
    • FTP 放置文件活动的配置任务中,针对类型字段选择文本选项。
    • FTP 放置文件活动的交付规则任务中,针对文件传输类型字段选择以文本 (ASCII) 方式传输选项。

指定重试选项

  1. 核对表中选择重试任务。这样会显示“重试”窗格。
  2. 配置用于连接到 FTP 服务器的重试选项。下表定义用于连接到 FTP 服务器的重试选项:
    表 3.
    字段 描述
    重试  
    1) 在两次重试之间等待 ___ 秒。 Integration Appliance 在尝试与 FTP 服务器建立连接之前等待的秒数。
    2) 在尝试连接 ___ 次后失败。 指定重试计数 - Integration Appliance 在发出错误并停止处理当前编排作业之前尝试与 FTP 服务器建立连接的最大次数。

    如果部署包含 FTP 获取文件活动的编排并且 Integration Appliance 无法连接到指定的 FTP 服务器,那么 Integration Appliance 会在系统和编排日志中将连接错误记录为警告,直至达到重试计数值。当达到重试计数时,Integration Appliance 会在系统和编排日志中记录错误,并且停止处理当前编排作业。

    例如,将重试计数设置为 3。第一个、第二个和第三个连接错误在系统日志中显示为警告。 Integration Appliance 将第四个连接错误记录为错误,并且停止处理当前编排作业。

将输入映射到活动

  1. 核对表中选择映射输入任务。活动的输入参数会显示在“目标活动”窗格中。
  2. filename 参数是您在活动中需要提供值的唯一参数。所有其他参数均为可选。filename 参数指定要从 FTP 服务器获取的文件的名称。通过创建从 filename 输入参数到变量的链接或通过定义 filename 输入参数的缺省值来为 filename 参数提供值。

    如果“映射输入”窗格的“目标活动”窗格中未显示下表中列出的可选输入参数,请从工具栏菜单中选择映射 > 显示可选参数,或者在“目标活动”窗格中右键单击,然后选择显示可选参数选项。 如果映射 > 显示可选参数选项在工具栏菜单中不可选,请单击“映射输入”窗格中的节点以激活此选项。

    您可以选择性地覆盖运行时期间在核对表配置选取端点任务中指定的设置,方法是使用下表中定义的输入参数。

    例如,可以在配置任务中将 Integration Appliance 获取文件所在的 FTP 服务器上的目录设置为名为 input 的目录。在运行时期间,可能会使用 directory 输入参数将目录名 inputXML 传递到此活动中。 在运行时期间动态指定的目录名称覆盖“配置”窗格中指定的原始设置。在此示例中,Integration Appliance 尝试从 inputXML 目录中获取文件。

表 4.
输入参数名称/节点 描述 是否覆盖任务中的设置?
directory 指定 Integration Appliance 将此活动中生成的文件在 FTP 服务器上的放置目录。 directory 输入参数覆盖配置任务的自活动字段。
encoding 指定如何将传出数据写出到文件:
  • 如果无需编码,请指定字符串:binary
  • 如果必需编码,请指定应当用于编码传出数据的编码类型,例如:UTF-8US-ASCIIISO_8859-1EBCDIC-USSHIFT-JIS
encoding 输入参数覆盖配置任务的类型字段中指定的编码,但是如果在配置任务的类型字段中选择了二进制选项,那么会忽略 encoding 输入参数指定的编码。
connection/timeout 指定连接超时 - 在 Integration Appliance 尝试与端点建立连接和端点响应连接请求期间发生超时之前等待的秒数。对于 FTP 获取文件活动,指的是在超时之前 Integration Appliance 尝试与 FTP 服务器建立连接所花费的时间量。 connection 输入参数的 timeout 节点覆盖 FTP 端点的连接超时 - 在与端点建立连接 ___ 秒后将超时字段。
connection/host 指定 FTP 服务器的主机名或 IP 地址。 connection 输入参数的 host 节点覆盖 FTP 端点的主机名字段。
connection/port 为所指定的主机名指定端口号。FTP 流量的标准端口为 21。SFTP 流量的缺省端口为 22。 connection 输入参数的 port 节点覆盖 FTP 端点的端口字段。
connection/username 指定用于连接到 FTP 服务器的帐户的用户名。 connection 输入参数的 username 节点覆盖 FTP 端点的用户名字段。
connection/password 指定用于连接到 FTP 服务器的帐户的密码。 connection 输入参数的 password 节点覆盖 FTP 端点的密码字段。

映射活动的输出

  1. 核对表中选择映射输出任务。活动的输出参数显示在“自活动”窗格中,如下表中所述:
    表 5.
    输出参数名称 描述
    数据 包含文件的内容。
    timestamp 包含从 FTP 服务器返回的文件的时间戳记,通常是文件的创建日期或上次修改日期。
  2. 将所需输出参数映射到变量。