Apache Camelにカスタムsftpコンポーネントを追加して、sftpcomponentに渡す設定オブジェクトにユーザ名、ホスト、ポート、パスワードをラップしようとしています。以下は apache camel:sftpコンポーネントを使用したカスタムsftp設定
は、私が試してみましたコードです:@Configuration
class SftpConfig {
@Bean("sourceSftp")
public SftpComponent getSourceSftpComponent(
@Qualifier("sftpConfig")
SftpConfiguration sftpConfig) throws Exception{
SftpComponent sftpComponent = new SftpComponent();
// not getting way to set the configuration
return sftpComponent;
}
@Bean("sftpConfig")
public SftpConfiguration getSftpConfig(
@Value("${host}") String host,
@Value("${port}") int port,
@Value("${applicationUserName}") String applicationUserName,
@Value("${password}") String password) {
SftpConfiguration sftpConfiguration = new SftpConfiguration();
sftpConfiguration.setHost(host);
sftpConfiguration.setPort(port);
sftpConfiguration.setUsername(applicationUserName);
sftpConfiguration.setPassword(password);
return sftpConfiguration;
}
}
//他のクラスでの
from("sourceSftp:<path of directory>") ---custom component
JMSComponentで同様のアプローチは、私がsourcejmsためのBeanを作成したところ正常に動作しますが、私SftpComponentにはsftpconfigurationの呼び出しが設定されていないため、sftpに対しては実行できません。
ありがとうございました。やってみます。 – griffin