Я пытаюсь настроить несколько очередей SOLACE в моем приложении для весенней загрузки, используя следующий код:
@Configuration
public class JmsConfig {
@Bean(name="queue1")
@Primary
@ConfigurationProperties(prefix="spring.jta.bitronix.connectionfactory.queue1"
public ConnectionFactory queue1ConnectionFactory() {
return new PoolingConnectionFactoryBean();
}
@Bean(name="queue2")
@ConfigurationProperties(prefix="spring.jta.bitronix.connectionfactory.queue2")
public ConnectionFactory queue2ConnectionFactory() {
return new PoolingConnectionFactoryBean();
}
}
Вот способ, которым я пытаюсь дать свойства:
spring.jta.bitronix.connectionfactory.queue1.class-name=com.solacesystems.jms.SolXAConnectionFactoryImpl
spring.jta.bitronix.connectionfactory.queue1.driverProperties.host=<<hostURL1>>
spring.jta.bitronix.connectionfactory.queue1.driverProperties.VPN=<<VPN1>>
spring.jta.bitronix.connectionfactory.queue1.driverProperties.authentication-scheme=AUTHENTICATION_SCHEME_GSS_KRB
spring.jta.bitronix.connectionfactory.queue1.driverProperties.KRBServiceName=HOST
spring.jta.bitronix.connectionfactory.queue2.class-name=com.solacesystems.jms.SolXAConnectionFactoryImpl
spring.jta.bitronix.connectionfactory.queue2.driverProperties.host=<<hostURL2>>
spring.jta.bitronix.connectionfactory.queue2.driverProperties.VPN=<<VPN2>>
spring.jta.bitronix.connectionfactory.queue2.driverProperties.authentication-scheme=AUTHENTICATION_SCHEME_GSS_KRB
spring.jta.bitronix.connectionfactory.queue2.driverProperties.KRBServiceName=HOST
Сборка maven становится успешной, но у меня возникают проблемы при развертывании кода в облаке apaas. Ниже приведено исключение:
o.s.boot.SpringApplication: сбой запуска приложения
org.springframework.context.ApplicationContextException: невозможно
запустить веб-сервер; вложенное исключение
org.springframework.boot.web.server.WebServerException: невозможно
начать встроенный Tomcat в
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh (ServletWebServerApplicationContext.java:157)
в
org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:540)
в
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh (ServletWebServerApplicationContext.java:142)
в
org.springframework.boot.SpringApplication.refresh (SpringApplication.java:775)
в
org.springframework.boot.SpringApplication.refreshContext (SpringApplication.java:397)
в
org.springframework.boot.SpringApplication.run (SpringApplication.java:316)
в
org.springframework.boot.SpringApplication.run (SpringApplication.java:1260)
в
org.springframework.boot.SpringApplication.run (SpringApplication.java:1248)
в
com.barclays.magics.slam.MagSlamApplication.main (MagSlamApplication.java:25)
в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в
sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
в
sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
в java.lang.reflect.Method.invoke (Method.java:498) в
org.springframework.boot.loader.MainMethodRunner.run (MainMethodRunner.java:48)
на org.springframework.boot.loader.Launcher.launch (Launcher.java:87)
на org.springframework.boot.loader.Launcher.launch (Launcher.java:50)
в
org.springframework.boot.loader.JarLauncher.main (JarLauncher.java:51)
Вызывается: org.springframework.boot.web.server.WebServerException:
Невозможно запустить встроенный Tomcat в
org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize (TomcatWebServer.java:125)
в
org.springframework.boot.web.embedded.tomcat.TomcatWebServer. (TomcatWebServer.java:86)
в
org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer (TomcatServletWebServerFactory.java:414)
в
org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer (TomcatServletWebServerFactory.java:174)
в
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer (ServletWebServerApplicationContext.java:181)
в
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh (ServletWebServerApplicationContext.java:154)
... 16 общих кадров опущены
org.springframework.beans.factory.BeanCreationException: ошибка
создание компонента с именем 'servletEndpointRegistrar', определенного в классе
ресурс пути
[Орг / springframework / загрузки / срабатывают / Автоконфигурирование / конечная точка / веб / ServletEndpointManagementContextConfiguration $ WebMvcServletEndpointManagementContextConfiguration.class]:
Не удалось создать экземпляр объекта с помощью фабричного метода; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.endpoint.web.ServletEndpointRegistrar]:
Фабричный метод 'servletEndpointRegistrar' вызвал исключение; вложенными
исключение
org.springframework.beans.factory.UnsatisfiedDependencyException:
Ошибка при создании компонента с именем 'healthEndpoint', определенным в пути к классу
ресурс
[Орг / springframework / загрузки / срабатывают / Автоконфигурирование / здоровье / HealthEndpointConfiguration.class]:Неудовлетворенная зависимость выражается с помощью метода «healthEndpoint»
параметр 1; вложенное исключение
org.springframework.beans.factory.BeanCreationException: ошибка
создание бина с именем 'healthIndicatorRegistry', определенного в классе
ресурс пути
[Орг / springframework / загрузки / срабатывают / Автоконфигурирование / здоровье / HealthIndicatorAutoConfiguration.class]:
Не удалось создать экземпляр объекта с помощью фабричного метода; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.health.HealthIndicatorRegistry]:
Фабричный метод «HealthIndicatorRegistry» выбросил исключение; вложенными
Исключением является org.springframework.beans.factory.BeanCreationException:
Ошибка создания бина с именем
'Org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration':
Не удалось создать экземпляр объекта через конструктор; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration $$ EnhancerBySpringCGLIB $$ 13434908]:
Конструктор бросил исключение; вложенное исключение
org.springframework.beans.factory.BeanCreationException: ошибка
создание бина с именем queue1ConnectionFactory, определенного в классе
ресурс пути [JmsConfig.class]: сбой вызова метода init;
вложенное исключение
bitronix.tm.resource.ResourceConfigurationException: не может создать JMS
фабрика соединений с именем queue1ConnectionFactory в
org.springframework.beans.factory.support.ConstructorResolver.instantiate (ConstructorResolver.java:627)
в
org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod (ConstructorResolver.java:607)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod (AbstractAutowireCapableBeanFactory.java:1288)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance (AbstractAutowireCapableBeanFactory.java:1127)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean (AbstractAutowireCapableBeanFactory.java:538)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean (AbstractAutowireCapableBeanFactory.java:498)
в
org.springframework.beans.factory.support.AbstractBeanFactory.lambda $ doGetBean $ 0 (AbstractBeanFactory.java:320)
в
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton (DefaultSingletonBeanRegistry.java:222)
в
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean (AbstractBeanFactory.java:318)
в
org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:204)
в
org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType (ServletContextInitializerBeans.java:235)
в
org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType (ServletContextInitializerBeans.java:226)
в
org.springframework.boot.web.servlet.ServletContextInitializerBeans.addServletContextInitializerBeans (ServletContextInitializerBeans.java:101)
в
org.springframework.boot.web.servlet.ServletContextInitializerBeans. (ServletContextInitializerBeans.java:88)
в
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans (ServletWebServerApplicationContext.java:261)
в
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize (ServletWebServerApplicationContext.java:234)
в
org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup (TomcatStarter.java:54)
в
org.apache.catalina.core.StandardContext.startInternal (StandardContext.java:5098)
в
org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:183)
вorg.apache.catalina.core.ContainerBase $ StartChild.call (ContainerBase.java:1432) в org.apache.catalina.core.ContainerBase $ StartChild.call (ContainerBase.java:1422) в java.util.concurrent.FutureTask.выполнить (FutureTask.java:266) в org.apache.tomcat.util.threads.InlineExecutorService.execute (InlineExecutorService.java:75) в java.util.concurrent.AbstractExecutorService.submit (AbstractExecutorService.javag1: 34).catalina.core.ContainerBase.startInternal (ContainerBase.java:944) в org.apache.catalina.core.StandardHost.startInternal (StandardHost.java:831) в org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java).: 183) в org.apache.catalina.core.ContainerBase $ StartChild.call (ContainerBase.java:1432) в org.apache.catalina.core.ContainerBase $ StartChild.call (ContainerBase.java:1422) в java.util.concurrent.FutureTask.run (FutureTask.java:266) в org.apache.tomcat.util.threads.InlineExecutorService.execute (InlineExecutorService.java:75) в java.util.concurrent.AbstractExecutorService.submit (AbstractExecutorService.java:134) в org.apache.catalina.core.ContainerBase.startInternal (ContainerBase.java:944) в org.apache.catalina.core.StandardEngine.startInternal (StandardEngine.java:261) или.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:183) в org.apache.catalina.core.StandardService.startInternal (StandardService.java:422) в org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java: 183) в org.apache.catalina.core.StandardServer.startInternal (StandardServer.java:801) в org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:183) в org.apache.catalina.startup.Tomcat.start (Tomcat.java:372) в org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize (TomcatWebServer.java:106) ... 21 опущенных общих фреймов. Причины: org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр [org.springframework.boot.actuate.endpoint.web.ServletEndpointRegistrar]: метод фабрики 'servletEndpointRegistrar' вызвал исключение;вложенное исключение: org.springframework.beans.factory.UnsatisfiedDependencyException: ошибка создания бина с именем 'healthEndpoint', определенного в ресурсе пути к классу [org / springframework / boot / activate / autoconfigure / health / HealthEndpointConfiguration.class]: неудовлетворенная зависимость, выраженная методом 'healthEndpoint 'параметр 1;вложенным исключением является org.springframework.beans.factory.BeanCreationException: ошибка при создании компонента с именем 'healthIndicatorRegistry', определенным в ресурсе пути к классу [org / springframework / boot / activate / autoconfigure / health / HealthIndicatorAutoConfiguration.class]: метод экземпляра компонента не был обработан с помощью фабрики;вложенным исключением является org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр [org.springframework.boot.actuate.health.HealthIndicatorRegistry]: фабричный метод 'healthIndicatorRegistry' вызвал исключение;вложенное исключение: org.springframework.beans.factory.BeanCreationException: ошибка создания бина с именем org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration ': не удалось создать экземпляр компонента с помощью конструктора;вложенное исключение - org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр [org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration $$ EnhancerBySpringCGLIB $$вложенное исключение - org.springframework.beans.factory.BeanCreationException: ошибка создания бина с именем 'queue1ConnectionFactory', определенного в ресурсе пути к классу [JmsConfig.class]: сбой вызова метода init;вложенное исключение - bitronix.tm.resource.ResourceConfigurationException: невозможно создать фабрику соединений JMS с именем queue1ConnectionFactory вorg.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate (SimpleInstantiationStrategy.java:185)
в
org.springframework.beans.factory.support.ConstructorResolver.instantiate (ConstructorResolver.java:622)
... 61 типичные кадры опущены
org.springframework.beans.factory.UnsatisfiedDependencyException:
Ошибка при создании компонента с именем 'healthEndpoint', определенным в пути к классу
ресурс
[Орг / springframework / загрузки / срабатывает / Автоконфигурирование / здоровье / HealthEndpointConfiguration.class]:
Неудовлетворенная зависимость выражается с помощью метода «healthEndpoint»
параметр 1; вложенное исключение
org.springframework.beans.factory.BeanCreationException: ошибка
создание бина с именем 'healthIndicatorRegistry', определенного в классе
ресурс пути
[Орг / springframework / загрузки / срабатывают / Автоконфигурирование / здоровье / HealthIndicatorAutoConfiguration.class]:
Не удалось создать экземпляр объекта с помощью фабричного метода; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.health.HealthIndicatorRegistry]:
Фабричный метод «HealthIndicatorRegistry» выбросил исключение; вложенными
Исключением является org.springframework.beans.factory.BeanCreationException:
Ошибка создания бина с именем
'Org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration':
Не удалось создать экземпляр объекта через конструктор; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration $$ EnhancerBySpringCGLIB $$ 13434908]:
Конструктор бросил исключение; вложенное исключение
org.springframework.beans.factory.BeanCreationException: ошибка
создание бина с именем queue1ConnectionFactory, определенного в классе
ресурс пути [JmsConfig.class]: сбой вызова метода init;
вложенное исключение
bitronix.tm.resource.ResourceConfigurationException: не может создать JMS
фабрика соединений с именем queue1ConnectionFactory в
org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray (ConstructorResolver.java:769)
в
org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod (ConstructorResolver.java:509)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod (AbstractAutowireCapableBeanFactory.java:1288)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance (AbstractAutowireCapableBeanFactory.java:1127)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean (AbstractAutowireCapableBeanFactory.java:538)
в
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean (AbstractAutowireCapableBeanFactory.java:498)
в
org.springframework.beans.factory.support.AbstractBeanFactory.lambda $ doGetBean $ 0 (AbstractBeanFactory.java:320)
в
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton (DefaultSingletonBeanRegistry.java:222)
в
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean (AbstractBeanFactory.java:318)
в
org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:199)
в
org.springframework.context.support.AbstractApplicationContext.getBean (AbstractApplicationContext.java:1083)
в
org.springframework.boot.actuate.endpoint.annotation.EndpointDiscoverer.createEndpointBean (EndpointDiscoverer.java:149)
в
org.springframework.boot.actuate.endpoint.annotation.EndpointDiscoverer.createEndpointBeans (EndpointDiscoverer.java:136)
в
org.springframework.boot.actuate.endpoint.annotation.EndpointDiscoverer.discoverEndpoints (EndpointDiscoverer.java:125)
в
org.springframework.boot.actuate.endpoint.annotation.EndpointDiscoverer.getEndpoints (EndpointDiscoverer.java:119)
вorg.springframework.boot.actuate.autoconfigure.endpoint.web.ServletEndpointManagementContextConfiguration $ WebMvcServletEndpointManagementContextConfiguration.servletEndpointRegistrar (ServletEndpointManagementContextConfiguration.java:76)
в
org.springframework.boot.actuate.autoconfigure.endpoint.web.ServletEndpointManagementContextConfiguration $ WebMvcServletEndpointManagementContextConfiguration $$ EnhancerBySpringCGLIB $$ e38d5663.CGLIB $ servletEndpointRegistrar $ 0 ()
в
org.springframework.boot.actuate.autoconfigure.endpoint.web.ServletEndpointManagementContextConfiguration $ WebMvcServletEndpointManagementContextConfiguration $$ EnhancerBySpringCGLIB $$ e38d5663 $$ FastClassBySpringCGLIB $$ e4f06b7b.invoke ()
в
org.springframework.cglib.proxy.MethodProxy.invokeSuper (MethodProxy.java:244)
в
org.springframework.context.annotation.ConfigurationClassEnhancer $ BeanMethodInterceptor.intercept (ConfigurationClassEnhancer.java:363)
в
org.springframework.boot.actuate.autoconfigure.endpoint.web.ServletEndpointManagementContextConfiguration $ WebMvcServletEndpointManagementContextConfiguration $$ EnhancerBySpringCGLIB $$ e38d5663.servletEndpointRegistrar ()
в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в
sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
в
sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
в java.lang.reflect.Method.invoke (Method.java:498) в
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate (SimpleInstantiationStrategy.java:154)
... 62 общих кадра опущены
org.springframework.beans.factory.BeanCreationException: ошибка
создание бина с именем 'healthIndicatorRegistry', определенного в классе
ресурс пути
[Орг / springframework / загрузки / срабатывают / Автоконфигурирование / здоровье / HealthIndicatorAutoConfiguration.class]:
Не удалось создать экземпляр объекта с помощью фабричного метода; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.health.HealthIndicatorRegistry]:
Фабричный метод «HealthIndicatorRegistry» выбросил исключение; вложенными
Исключением является org.springframework.beans.factory.BeanCreationException:
Ошибка создания бина с именем
'Org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration':
Не удалось создать экземпляр объекта через конструктор; вложенное исключение
org.springframework.beans.BeanInstantiationException: не удалось
иллюстрировать примерами
[Org.springframework.boot.actuate.autoconfigure.jms.JmsHealthIndicatorAutoConfiguration $$ EnhancerBySpringCGLIB $$ 13434908]:
Конструктор бросил исключение; вложенное исключение
org.springframework.beans.factory.BeanCreationException: ошибка
создание бина с именем queue1ConnectionFactory, определенного в классе
ресурс пути [JmsConfig.class]: сбой вызова метода init;
вложенный
Любые указатели будут очень полезны