2017-08-08 19 views
3

Apache CamelルートでSpringブートプロパティを使用することは可能ですか? @Valueは正常に動作していますが、これを直接式の所持者に配置することは可能です。Apache CamelルートでのSpringブートプロパティの使用

更新:私はPropertiesComponentを知っていますが、これはApplicaiton.yml以外のもう1つの設定です。

application.yml

sftp: 
    host:  10.10.128.128 
    user:  ftpuser1 
    password: ftpuser1password 
    path:  /tmp/inputfile/test1 

春ブーツApacheのキャメルルート:代わりにあなたがそのようなあなたの完全なリンクを注入することができるフィールドを区切るために、すべてのあなたのプロパティを注入する

@Value("${sftp.user}") 
    private String sftpUser; 

    @Value("${sftp.host}") 
    private String sftpHost; 

    @Value("${sftp.password}") 
    private String sftpPassword; 

    @Value("${sftp.path}") 
    private String sftpInPath; 

    from("sftp://"+sftpUser+"@"+sftpHost+sftpInPath+"?delete=true&password="+sftpPassword) 
//this is working 

    from("sftp://${sftp.user}@${sftp.host}${sftp.path}?password=${sftp.password}") 
// is this possible something like this? 
+0

は、あなたがこれを行うてみましたか? – ByeBye

+0

はい、それは空であると言います。また、バインドできませんでした。返信のために@ByeByeありがとうございました – sunleo

+0

あなたはこれを見ましたか?http://camel.apache.org/properties.html –

答えて

2

@Value("#{'sftp://'+'${sftp.user}'+'@'+'${sftp.host}'+'${sftp.path}'+'?delete=true&password='+'${sftp.password}'}") 
private String fullLink; 

その後、fromメソッドで使用できます。

+0

あなたのお返事ありがとうございました。 – sunleo

1

ローカルで試したことはありませんが、thisを使用すると、このプロパティコンポーネントをラクダのコンテキストに追加することができます(おそらくラクダのコンテキスト設定をオーバーライドする必要があります)。そして、from部分の中で{{file.uri}}を使用することができます。

PropertiesComponent pc = new PropertiesComponent(); 
pc.setLocation("classpath:com/mycompany/myprop.properties"); 
context.addComponent("properties", pc); 
+0

返信いただきありがとうございます。連絡先のapplication.propertiesが1つあるため、この(PropertiesComponent)はアプリケーションのオーバーヘッドになります。 – sunleo

+0

申し訳ありませんが、springブートが作成するapplication.propertiesを指さないのはなぜですか? –

+0

これは、.ymlをサポートするかどうか、またはプロパティのみをサポートするかどうかを知るまでは良い考えです。私はこれをチェックします。 – sunleo

3

あなたはこのようにキャメルのプロパティプレースホルダ(http://camel.apache.org/properties.html)を使用することができます。

from("sftp://{{sftp.user}}@{{sftp.host}}{{sftp.path}}?password={{sftp.password}}") 
+0

ありがとう私はこれをチェックします – sunleo

関連する問題