0
私のコードは、jmsキューを消費し、lbは外部httpクライアントにリダイレクトします。 ローカルディレクトリへの配信が失敗するたびに、元のメッセージを記録する必要があります。 問題は、各フェイルオーバーによってonExceptionがキャッチされることです。 これを達成する方法はありますか?ロードバランサから例外を1回だけ処理します(フェイルオーバーが使い果たされたとき)
擬似コード:
onException(Exception.class).useOriginalMessage()
.setHeader(...)
.to("file...")
.setHeader(...)
.to("file...")
from("activemq...")
.process(...)
.loadBalance().failover(...)
.to("lb-route1")
.to("lb-route2")
.end()
.process()
.to("file...")
from("lb-route1")
.recipientList("dynamic url")
.end()
from("lb-route2")
.recipientList("dynamic url")
.end()
circuitBreakerコンポーネントをerrorHandlerと共に使用してこれを実行し、リトライを1に制限することができます – Sundar