2011-07-20 29 views
0

の為替上の別の例外を設定します他のプロセッサーに行く(私の場合は、 "doSmth"プロセッサーには行かない)は、私はそのようなルートを持っているプロセッサ

私は、私が "onException"を構築したエクスチェンジで例外を変更したと思う。

Exchangeの例外を変更した後でも、私のルートに移動する方法はありますか?

+0

whあなたは正確にやろうとしていますか?また、Camel-Usersフォーラムまたはここに質問を投稿してください...両方 –

答えて

0

私はエクサージュに入っているキャッチされた例外を包み込み、別のカスタム例外にラップしようとしていました。

このラッピングの後、この例外をカスタム交換に設定する必要があります。 キャメルのフォーラムで@Claus Ibsen-2から後で発見しました。私は

exchange.setException(ex) 

を使用する場合、ルーティング私は次の@プロセッサを実行して、周りにいくつかの作業を行うために管理している。その後、

exchange.getOut.setHeader("ex",customException) 

@Route:

this.onException(classOf[IOException]).process(doSmth).log(LoggingLevel.INFO, "new", ${in.header.ex} ") 

それは私のログに出力します私が最初から正確に必要としているもの: CustomException:java.lang.IOException

関連する問題