私はこの問題で長時間壁に頭を打ち、複数の方法でテストし、ソースコードを掘り下げて動作しない理由を調べることができません。AcceptOnceFileFilterはCompositeFileListFilter内で他のフィルタが動作しないようにします
私はフィルターをかけて他の業界標準のポーリングチェックを提供できるように、複合フィルターが必要です。以下のコードは問題の中核部分であり、Inbound Channel Adapterにあります。
addFilter(新しいAcceptOnceFileListFilter())がコードにない場合、コードは正常に機能します。それを置くと、すぐにファイルが見つかりません。 RegexPatternFileListFilterをシナリオの外に出すと動作します。
CompositeFileListFilter<File> compositeFileListFilter= new CompositeFileListFilter<File>();
compositeFileListFilter.addFilter(new RegexPatternFileListFilter(".*_CLAIM_.*[.]txt"));
compositeFileListFilter.addFilter(new AcceptOnceFileListFilter<File>());
compositeFileListFilter.addFilter(lastModifiedFilter());
FileReadingMessageSource pollDirectory = new FileReadingMessageSource();
pollDirectory.setDirectory(new File(pollingDirectory));
pollDirectory.setAutoCreateDirectory(false);
pollDirectory.setFilter(compositeFileListFilter);
pollDirectory.setLocker(new NioFileLocker());
アップデート2016年9月21日:この問題を示す 例の春ブートアプリケーションがにアップロードされました: https://github.com/tedwards-rogue/AcceptOnceFileFilter-Test
私たちの側から遊ぶために、いくつかのSpring Bootアプリケーションを思いつくのは難しいでしょうか?少なくとも、Spring Integrationカテゴリのデバッグログを提供してください。 –
コードをPivotalの皆さんに直接バンドルする方法はありますか?これは現時点では私的なGitリポジトリにあります。 –
これは、単純な一般的なSpringブートアプリケーションであれば、公開することができます。あなたのアプリが非常に大きい場合、私たちはこれまでに掘り下げることを意図していません。自分のプライベートレポを表示する権限をユーザーに与えることはできますが、https://github.com/artembilan –