例外が発生した場合や ActiveMQ が失敗した場合、ActiveMQ fromChannel からのメッセージを消費しているサービス アクティベーターなどのコンシューマーを再起動する必要があります。次の春の統合コンテキストでそれを行う方法は?
<!-- RECEIVER. message driven adapter -> jmsInChannel -> activator. -->
<si:channel id="fromChannel"/>
<int-jms:message-driven-channel-adapter id="messageDrivenAdapter"
channel="fromChannel" destination="forward" connection-factory="connectionFactory"
max-concurrent-consumers="2" auto-startup="true" acknowledge="auto" extract-payload="false" />
<si:service-activator id ="activator"
input-channel="fromChannel"
ref="messageService"
method="process"/>
<bean id="messageService" class="com.ucware.ucpo.forward.jms.MessageService"/>
私の最初のアイデアは、再試行アドバイスを使用してサービスに追加することでしたが、これが未処理の例外に対する正しい解決策であるかどうかはわかりません。また、ActiveMQ サーバーがダウンした場合にレシーバーを再起動したいと考えています。