合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
# 35.5 混合XA和non-XA的JMS连接 ### 35.5 混合XA和non-XA的JMS连接 当使用JTA时,primary JMS `ConnectionFactory`bean将能识别XA,并参与到分布式事务中。有些情况下,你可能需要使用non-XA的`ConnectionFactory`去处理一些JMS消息。例如,你的JMS处理逻辑可能比XA超时时间长。 如果想使用一个non-XA的`ConnectionFactory`,你可以注入`nonXaJmsConnectionFactory` bean而不是`@Primary``jmsConnectionFactory` bean。为了保持一致,`jmsConnectionFactory` bean将以别名`xaJmsConnectionFactor`来被使用。 示例如下: ``` // Inject the primary (XA aware) ConnectionFactory @Autowired private ConnectionFactory defaultConnectionFactory; // Inject the XA aware ConnectionFactory (uses the alias and injects the same as above) @Autowired @Qualifier("xaJmsConnectionFactory") private ConnectionFactory xaConnectionFactory; // Inject the non-XA aware ConnectionFactory @Autowired @Qualifier("nonXaJmsConnectionFactory") private ConnectionFactory nonXaConnectionFactory; ```