0

spring-integration-awsがリモートフォルダ構造をローカルに作成して同期できるようにする設定を見つけようとしています。春の統合Aws:ローカルにリモートフォルダを作成する

例:それはローカルでいっぱいのフォルダ構造を持っていないことが原因で発生しているように見えます

Caused by: java.io.FileNotFoundException: test.s3.bucket/folder1/floder2/folder3/etc/etc/etc/etc/DD2419D7-104E-46FC-A513-9E587E58A949.ZIP.a.writing (No such file or directory) 

:エラーメッセージが表示されます現在

test.s3.bucket/folder1/floder2/folder3/etc/etc/etc/etc 

: は非常に長いS3バケットアドレスを考えますこれを作成するようにS3InboundFileSynchronizingMessageSourceを設定することはできますか?

現在の設定:

public S3InboundFileSynchronizingMessageSource s3InboundFileSynchronizingMessageSource() { 
    S3InboundFileSynchronizingMessageSource messageSource = 
      new S3InboundFileSynchronizingMessageSource(file); 
    messageSource.setAutoCreateLocalDirectory(true); 
    messageSource.setLocalDirectory(new File("onComputer")); 
    messageSource.setLocalFilter(new AcceptOnceFileListFilter<>()); 
    return messageSource; 

答えて

1

このような質問をするときは、例外の同期化だけでなく、完全なスタックトレースを含め、ご使用の構成の多くを示す必要があります。

現在のところ、リモートファイルツリーを再構築するメカニズムはありません。これは、リモートディレクトリのリーフノードとlocalDirectoryの間の単純なフラットファイルのみの同期です。

autoCreateLocalDirectoryがtrueの場合、初期化中に1回実行されます。

+0

チップをありがとう。ですから、xレベルのzip(例えば)の名前のついた完全名字を渡すと、完全なパスが事前にわからないので、このライブラリを使用することはできません。私は本当にそれを使用したいと思っていた。 – user101010101

+0

また、s3バケットにたくさんのファイルがあると、すべてのファイルを同期しようとすると、xファイルが必要なのですか? – user101010101

+0

現在、[FTP/SFTPのようなアウトバウンドゲートウェイ](http://docs.spring.io/spring-integration/reference/html/ftp.html#ftp-outbound-gateway)は提供されていませんが、モジュールは同じ抽象化 - したがって、あなたは 'S3RemoteFileTemplate'を使用してファイルの一覧表示やファイルのフェッチなどを行うことができます。また、[このコミット](https://github.com/spring-projects/spring-integration-aws/commit/a0893cb88edb17a376f1ef874d80de98336129ad)いくつかのドキュメントがありますが、リモートディレクトリ構造をダウンロードしてコピーするのに使用できます。 [Doc JIRA here](https://jira.spring.io/browse/INTEXT-221)。 –

関連する問題