MessageConsumer
/ MessageProducer
XA是否等同于QueueSender
/ QueueReceiver
?
据我所知,MessageConsumer
/ MessageProducer
更适合在XA环境中使用。
在我的应用中,我想从QueueConnectionFactory
,QueueConnection
,QueueSession切换到相应的XA,为此,我需要使用MessageConsumers
/ Receivers
代替{ {1}}和QueueSenders
。
答案 0 :(得分:12)
MessageConsumer
/MessageProducer
XA是否等同于QueueSender
/QueueReceiver
?
没有。 QueueSender
扩展MessageProducer
,并提供一些其他特定于队列的方法。它与XA无关。 QueueReceiver
和MessageConsumer
之间存在相同的关系。
据我所知,
MessageConsumer
/MessageProducer
最适合在XA环境中使用。
同样,这与XA无关。通常最好在任何JMS代码中写入MessageConsumer
/ MessageProducer
接口,除非您特别需要QueueSender
/ {{1}提供的额外方法}。
在我的应用中,我想从
QueueReceiver
,QueueConnectionFactory
,QueueConnection
切换到相应的XA,为此,我需要使用MessageConsumers / Receivers而不是QueueSenders和QueueReceivers。 / p>
没有。无论您是否使用XA,都与您选择的API接口无关。 XA行为由您从应用程序服务器获取的QueueSession
确定。大多数将为您提供XA或非XA QueueConnectionFactory
,通常在不同的JNDI路径上,您可以获得适当的路径。
一旦你有了正确的QueueConnectionFactory
,你的申请就不应该关心是否使用了XA。