10

MessageConsumer/ XA是否MessageProducer等同于QueueSender/ QueueReceiver

据我所知,MessageConsumer/MessageProducer最好在 XA 上下文中使用。

在我的应用程序中,我想从QueueConnectionFactory, QueueConnection, QueueSession 切换到它们的 XA 等效项,为此我需要使用MessageConsumers/Receivers而不是QueueSendersand QueueReceivers

4

1 回答 1

15

MessageConsumer/ XA是否MessageProducer等同于QueueSender/ QueueReceiver

QueueSenderextends MessageProducer,并提供了一些额外的队列特定的方法。它与 XA 无关。QueueReceiver和之间存在相同的关系MessageConsumer

据我所知,MessageConsumer/MessageProducer最好在 XA 上下文中使用。

同样,这与 XA 无关。通常最好在任何 JMS 代码中写入MessageConsumer/接口,除非您特别需要/提供的额外方法。MessageProducerQueueSenderQueueReceiver

在我的应用程序中,我想从QueueConnectionFactoryQueueConnection、切换QueueSession到它们的 XA 等效项,为此我需要使用 MessageConsumers/Receivers 而不是 QueueSenders 和 QueueReceivers。

不。您是否使用 XA 与您选择的 API 接口无关。XA 行为由QueueConnectionFactory您​​从应用程序服务器获取的行为决定。大多数会为您提供 XA 或非 XA QueueConnectionFactory,通常在不同的 JNDI 路径上,并且由您决定获得合适的路径。

一旦你有了正确的QueueConnectionFactory,你的应用程序就不应该关心是否使用了 XA。

于 2011-07-11T12:26:52.963 回答