Java SpringJMS:未知提供程序的连接工厂

Java SpringJMS:未知提供程序的连接工厂,java,spring,jms,spring-jms,Java,Spring,Jms,Spring Jms,也许这是一个极端的新手问题,但是: 我将要实现向队列发送消息。问题是,我只知道它是一个JMS队列,但不知道是哪个实现(它只是称为ESB) 所以现在我必须有一个ConnectionFactorybean,我看到的所有示例都使用ActiveMqConnectionFactory。是否有任何通用工厂/实施?JMS是一种标准,所以我不应该绑定到某些特定的工厂实现,对吗?正确。您需要的是javax.jms.ConnectionFactory和javax.jms.Destination。 然而,正如您所说的

也许这是一个极端的新手问题,但是:

我将要实现向队列发送消息。问题是,我只知道它是一个JMS队列,但不知道是哪个实现(它只是称为ESB)


所以现在我必须有一个ConnectionFactorybean,我看到的所有示例都使用ActiveMqConnectionFactory。是否有任何通用工厂/实施?JMS是一种标准,所以我不应该绑定到某些特定的工厂实现,对吗?

正确。您需要的是
javax.jms.ConnectionFactory
javax.jms.Destination
。 然而,正如您所说的ESB,应该有一些到服务器的连接属性,例如JNDI,或者一些服务定位器来连接到总线并调用适当的服务


实际上没有足够的信息,您手头上关于ESB的信息,但是等等,javax.jms.ConnectionFactory是一个接口。。。我需要一些具体的实施…为什么?如果您有一个ESB,它必须为您提供一个内插,那么您只需要要求它返回一个JMS连接工厂。您的任务只是处理合同,而您是JMS客户机,而不是服务器。对,如果您的ESB服务器是ActiveMQ,则可以使用它的客户端连接到服务器。但对我来说,这看起来有点奇怪:如果您的客户机应用程序依赖于具体的实现,那么ESB的原因是什么?没有JNDI,所以我无法神奇地“加载”它。所以没有“标准JMS连接工厂”这样的东西?(如标准FTP客户端等)…您有哪些连接选项?我想我只会得到一个URL和队列的名称。。。那么,如果它是一个标准,那么ActiveMQ客户端实现是否也应该正确地处理它呢?