2017-12-18 18 views
-2

私はSpringブート(1.5.1)アプリケーションを持っています。Apache CamelルートとSpringブート:アプリケーション起動

アプリケーションの起動の一環として、外部サービスを呼び出す必要があります。これは問題ありません - 私はApplicationListenerを実装するクラスを実装しており、外部サービスは正しく呼び出されます。

私の問題は、外部サービスが即座にコールバックURLで自分のアプリケーションを呼び出すことです。私のアプリケーションへの呼び出しは、404 Not Foundで失敗しています。 URLエンドポイントは、Apache Camel(v。2.17.0)ルートとして設定されます。外部サービスが404を取得しているので、これは、外部サービスがそれを呼び出すまでにアプリケーションでルートが開始されていないことを意味します。

実際、私は、アプリケーションをデバッグし、外部サービスへの呼び出しの前にブレークポイントを追加することで、これを証明しました。コードを一時停止してコールバックURLを自分で呼び出すと、自分で404を取得します。 ApplicationListenerクラスのメソッド全体が完了し、アプリケーションが完全に起動した(メッセージ:「FrameworkServlet 'dispatcherServlet':initialization completed」)ので、コールバックURLが利用可能になります。

外部サービスへの呼び出しの前にApache Camelのルートを開始する方法はありますか?

ありがとうございました。

答えて

0

コールバックURLルートの後に開始するように設定された新しいCamelルートにApplicationListenerコードを転送することで修正される問題。これはCamelタイマーで作動します。

関連する問題