0
1つのラクダルータでは、フラグファイルが存在するかどうかを確認し、存在する場合にのみ続行します。ここでは、使用する予定のコードはありますが、動作しません。コンテンツベースのルーティング用にファイルが存在するかどうかをチェック
String flagFilePath = "file:" + flagFileFolder
+ "?noop=true&idempotent=false&fileName=" + flagFileName;
from(flagFilePath)
.choice()
.when(header("CamelFileName").isNotNull())
.log(LoggingLevel.TRACE, "Flag file exists.")
.otherwise()
.log(LoggingLevel.INFO, "Flag file does not exist.");
私は、ファイルが存在しない場合、全体のルータがトリガされていないためotherwise
がここにない到達可能であることを理解しています。
手書きの述語なしでファイルが存在するかどうかを簡単に確認する方法はありますか?
(注:上記のコードで見ることができるように、私は警告ログをトリガーするために、この条件を必要とする)
フラグファイルが存在する場合は、呼び出したいルートの外にフラグチェックを入れて、そのルートを呼び出すべきではありませんか? –
sendEmptyMessageWhenIdleオプション –
@ClausIbsenを参照してください、問題が解決しました。この場合、 '.endChoice()'が必要ですか? –