Talend 正在读取tftpconnection的密码文件

Talend 正在读取tftpconnection的密码文件,talend,Talend,我正在尝试使用tFTPConnection从FTP站点下载某些文件 这是一个常规FTP连接,在端口21上连接 我希望能够从文件中读取密码,而不是将密码硬编码到作业中 目前,我只是建立连接,然后打印成功: 关于如何处理或解决这个问题,有什么建议吗?Talend支持上下文变量的思想,它允许您在运行时定义用于它们的值 这通常用于使连接“上下文化”,然后在多个环境中部署作业,并使连接到特定于环境的端点 例如,一个作业可能需要连接到一个数据库,但对于每个开发、测试和生产环境,该数据库都是不同的 我们不是

我正在尝试使用tFTPConnection从FTP站点下载某些文件

这是一个常规FTP连接,在端口21上连接

我希望能够从文件中读取密码,而不是将密码硬编码到作业中

目前,我只是建立连接,然后打印成功:


关于如何处理或解决这个问题,有什么建议吗?

Talend支持上下文变量的思想,它允许您在运行时定义用于它们的值

这通常用于使连接“上下文化”,然后在多个环境中部署作业,并使连接到特定于环境的端点

例如,一个作业可能需要连接到一个数据库,但对于每个开发、测试和生产环境,该数据库都是不同的

我们不是将连接参数硬编码到作业,而是在上下文组下创建一些上下文变量,并在连接参数中引用这些上下文变量:

现在,在运行时,我们让Talend作业使用隐式上下文加载从具有相关连接参数的文件加载这些上下文:

在这种情况下,作业将在运行时从名为
test.CSV
的CSV读取上下文变量,如下所示:

现在,当运行此作业时,它将尝试使用root用户和空密码连接到localhost:3306/test

如果我们在另一台机器上有另一个上下文文件(但具有相同的文件路径),那么这可能引用其他服务器上的数据库,或者只是使用不同的凭据,而作业将连接到此其他数据库

对于您的用例,您只需使用FTP连接设置创建一个上下文组,包括密码(或者可能只是将密码上下文化),然后以相同的方式引用它:


你能发布你的工作布局的屏幕截图吗?或者更好地描述一下你迄今为止所做的尝试吗?当然,我使用了3个组件(用于测试连接)。tftpconnection,tfixedflowinput(我刚刚打印了success),tlogrow。tftpconnection使用oncomponentok连接到tfixedflowinput,tfixedflowinput使用Main连接到tlogrow。如果我键入密码并运行作业,它会打印以下内容:[统计信息]连接到端口3514上的套接字[统计信息]连接成功[统计信息]断开连接,我希望能够传入文件,而不是键入密码。谢谢。谢谢你的详细解释,非常感谢!!。我本来打算尝试一下,但我正在努力设置我的上下文。当我拖放上下文加载组件时,它已经有两个值,我无法删除,因为它已被禁用,并且它不是全局共享的上下文加载。tContextLoad组件要求您以键值对的形式向它传递一些数据。您可以从tFileInputDelimited读入csv,但您应该使用隐式tContextLoad选项,如我的回答中所述。我使用以下密码创建了一个名为partner_connection.csv的文件abc123,然后在我的作业中,我使用隐式tContextLoad读取此文件,并将字段分隔符设置为“,”。然后,在我的tftp connection for password字段中,我使用了“context.password”,但它给了我以下错误消息:“密码无法解析或不是字段”**我将密码重命名为ftppassword,因为我不确定密码是否是关键字。[statistics]连接到端口3419上的套接字[statistics]连接的隐式上下文上下文上下文设置键“ftppassword”值为“abc123”信息:参数“ftppassword”是线程“main”中隐式上下文上下文异常的新参数错误:未解决的编译问题:ftppassword无法解决或不是字段您需要定义上下文变量才能在作业中使用它。如果转到“上下文”选项卡,您应该能够添加上下文并将其称为“密码”