2016-07-13 20 views
0

Java DSLとSpringを使用して作成したApache Camelルートを2つ持っています。Apache Camelルートのアドホック実行

@Bean 
public CamelContext camelContext() throws Exception { 
    CamelContext camelContext = new DefaultCamelContext(); 
    camelContext.addRoutes(route1bean()); 
    ... 
    camelContext.start(); 
    return camelContext; 
} 

これらのルートは、スケジューリングのためのquartz2コンポーネントを使用し、すべてが期待どおりに動作します。

実行中にジョブにエラーが発生することがあり、手動で再試行する必要があります。私はhawtioを使用して、またはJavaコードでルートの特別な手動実行を行う方法を探しています。

答えて

1

はい、jconsoleを使用してください。ラクダには多くのメバンが暴露されています。それらを使用して開始および停止することができます。もちろん、Hawtioを使っても同じことができます。

はあなたのコメントに基づいて更新:

私はあなたが何を意味するかを取得、これは私が取るアプローチです。 3ルートを作成します。 2軽量ルート - シンプルファイルを使用したルートAエンドポイントからルートBをCronとルートCを使用して直接:bla実際のビジネスロジックを含むエンドポイントから。こうすることで、いつでもルートAを起動できます。ルートCは、ルートBがcronによってトリガーされるタイミングに関係なく、一般的です。

+0

私は 'start'と' stop'機能を認識しています。 'stop'はコンテキストからルートを削除し、' start'は同じcronでルートを再登録します。この場合、私は 'cron'に関係なくルートを起動/トリガーできるようにしたいと考えています – n002213f

+0

私は答えを更新しました。がんばろう。 – gnanagurus

関連する問題