出版商应该等到经纪人可用
Publisher should wait till broker is available
我有一个简单的发布者,它将消息发送到队列。
<int:channel id="publishChannel"/>
<int-jms:outbound-channel-adapter channel="publishChannel" destination="testQueue" session-transacted="true"/>
@Publisher(channel = "publishChannel")
public String sendMessage (String text) {
return text;
}
如果代理崩溃,发布者将抛出 MessageHandlingException。
是否可以阻止发布者,直到代理再次可用或进行定期重试?
你可以add a retry advice to the outbound adapter.
<int-jms:outbound-channel-adapter channel="publishChannel" destination="testQueue" session-transacted="true>
<int:request-handler-advice-chain>
<ref bean="myRetryAdvice" />
</request-handler-advice-chain>
</int-jms:outbound-channel-adapter>
您可以使用退避策略(例如指数)配置建议,并在重试次数耗尽时采取一些措施(而不是抛出最终异常)。
我有一个简单的发布者,它将消息发送到队列。
<int:channel id="publishChannel"/>
<int-jms:outbound-channel-adapter channel="publishChannel" destination="testQueue" session-transacted="true"/>
@Publisher(channel = "publishChannel")
public String sendMessage (String text) {
return text;
}
如果代理崩溃,发布者将抛出 MessageHandlingException。
是否可以阻止发布者,直到代理再次可用或进行定期重试?
你可以add a retry advice to the outbound adapter.
<int-jms:outbound-channel-adapter channel="publishChannel" destination="testQueue" session-transacted="true>
<int:request-handler-advice-chain>
<ref bean="myRetryAdvice" />
</request-handler-advice-chain>
</int-jms:outbound-channel-adapter>
您可以使用退避策略(例如指数)配置建议,并在重试次数耗尽时采取一些措施(而不是抛出最终异常)。