2016-03-18 3 views
1

@EnableBinding@Configurationにクラスを回すと、それはdocumentedです:@ EnableBinding-annotatedクラスで@RefreshScopeを使用するにはどうすればよいですか?

@RefreshScopeが@Configurationクラスに(技術的に)動作しますが、それは驚くべき行動につながるかもしれません。例えばそのクラスで定義されているすべての@Beans自体が@RefreshScopeであるという意味ではありません。具体的には、それらのBeanに依存するものは、リフレッシュが開始されたときに@RefreshScope(リフレッシュ時に再構築され、その依存関係が再注入され、その時点でリフレッシュされた@Configurationから再初期化されます)。

実際の質問です:@EnableBindingと注釈されたReceiverクラスを更新する方法はありますか?私たちは@EnableBindingをすることによって可能となるビジネス・ロジック豆自体として宣言され@Configurationクラスを使用し、それはフレームワークによって処理されない、と私たちの最も簡単な例については、カスタム@EventListener

答えて

0

で実装される必要がありますね事実、@EnableBinding@Configurationであり、したがって@Componentです。たとえば、Receiver Bean自体に@EnableBindingは必要ないので、論理を@RefreshScopeと注釈されたBeanに分けます。 @EnableBinding自体はリフレッシュされませんが、チャネルは開始/停止時にアンバウンド/リバウンドされます。

関連する問題