我想使用JMS的spring boot自动配置连接到远程JNDI,并根据通过 spring.jms.jndi-name 填充的名字检索 ConnectionFactory 。 >属性在 application.properties 文件中。
我注意到spring boot autoconfigure依靠 JndiConnectionFactoryAutoConfiguration 类来执行此操作,而该类又将调用 JndiTemplate 类进行查找。问题在于 JndiTemplate 类的环境属性的值为null,因此我们无法创建intialContext。
实际上,我注意到 JndiTemplate 类是在启动应用程序时以及在加载 JndiConnectionFactoryAutoConfiguration 类中定义的配置之前使用无参数构造函数实例化的。
我的问题:如何通过指定属性列表( Context.INITIAL_CONTEXT_FACTORY , Context.PROVIDER_URL ..)来实例化 JndiTemplate ?知道JmsTemplate具有一个采用 Properties 对象的构造函数。
仅供参考:我的应用程序是一个简单的jar,目前无法在服务器上运行。