是否可以在没有QueueConnectionFactory的情况下从WAS JNDI获取JMS队列引用?

时间:2017-01-10 17:58:37

标签: java jms websphere ibm-mq spring-jms

我正在开发一个项目,我需要从IBM MQ中使用JMS消息,该消息在websphere中定义为JNDI。

我只给出了队列的JNDI(jms / sampleQ)。我正在尝试从Spring JMS连接Queue。

我的问题是,QueueConnectionFactory是否必须连接队列(JNDI)?

1 个答案:

答案 0 :(得分:2)

要从JNDI获取javax.jms.Queue对象,您不需要拥有QueueConnectionFactory对象。它们是从JNDI查找的独立对象。

但是,要实际发送或接收消息,您需要组合JMS队列和JMS QueueConnectionFactory。 JNDI中的JMS队列可以与MQ QueueConnectionFactory一起使用,无论你如何掌握它,因此不需要从WAS JNDI名称空间中获取它,但是如果你没有从WAS JNDI获取QueueConnectionFactory,那么' ll松散与某些服务器功能(如事务管理器)的集成。 Spring可以从JNDI中选择QueueConnectionFactory作为选项。