0

我配置了基于spring xml的拦截器,它在提交后每次调用某些事务方法时都会向activemq队列发送一条jms消息。它发生在以下 xml 代码中。

<jms:outbound-channel-adapter channel="filteredStakesChannel" destination="stakesQueue" delivery-persistent="true" explicit-qos-enabled="true" />

但是,如果 activemq 服务器关闭,我会收到连接被拒绝的异常,该异常会被传播,即使 jms 传递失败,我也不希望这种情况发生。这可能吗?我应该使用一些错误通道吗?

4

1 回答 1

1

最简单的解决方案是将 fileredStakesChannel 设置为 Executor 通道,发送将在不同的线程上运行。

http://static.springsource.org/spring-integration/reference/html/messaging-channels-section.html#executor-channel

http://static.springsource.org/spring-integration/reference/html/messaging-channels-section.html#channel-configuration-executorchannel

使用 <task/> 命名空间来定义要使用的执行器。

于 2012-11-19T13:27:37.283 回答