Apache camel ApacheCamel-如何在dinamic sftp端点中设置私钥
使用JavaDSL,我有一个路由,在该路由中,我使用消息头中设置的文件名轮询SFTP服务器中的文件Apache camel ApacheCamel-如何在dinamic sftp端点中设置私钥,apache-camel,Apache Camel,使用JavaDSL,我有一个路由,在该路由中,我使用消息头中设置的文件名轮询SFTP服务器中的文件 from("direct:download") .pollEnrich() .simple("sftp://my.host:22/folder/?username=foo&fileName=${header.CamelFileName}") .to("file://state/downloaded"); sftp端点需要设置私钥。通常这样就
from("direct:download")
.pollEnrich()
.simple("sftp://my.host:22/folder/?username=foo&fileName=${header.CamelFileName}")
.to("file://state/downloaded");
sftp端点需要设置私钥。通常这样就足够了:
endpoint("sftp://my.host:22/folder/?username=foo&fileName=my_file_explicitly_written_here", SftpEndpoint.class).getConfiguration().setPrivateKey(getSshPrivateKey());
但是,我认为没有办法将pollRich().simple()
)中的URI(${header.CamelFileName}
)中的动态字段与端点配置“混合”
对此有什么建议吗?您可以从注册表中引用
privateKey
作为bean
.pollEnrich()
.simple("sftp://my.host:22/folder/?username=foo&privateKey=#myKeyInRegistry&fileName=${header.CamelFileName}")
将bean绑定到注册表取决于您使用的平台和Camel版本。您可以从注册表中引用
privateKey
作为bean
.pollEnrich()
.simple("sftp://my.host:22/folder/?username=foo&privateKey=#myKeyInRegistry&fileName=${header.CamelFileName}")
将bean绑定到注册表取决于您使用的平台和Camel版本。谢谢!没有想过直接将其放入uri中。那有帮助!谢谢没有想过直接将其放入uri中。那有帮助!