spring-attic / jms

Apache License 2.0
3 stars 8 forks source link

jms source failing to start #1

Open balistof opened 7 years ago

balistof commented 7 years ago

When using jms source in a stream it fails to start with following exception:

2016-11-24 12:37:15.802  WARN 1 --- [           main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.cloud.stream.app.jms.source.JmsSourceConfiguration': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.boot.autoconfigure.jms.JmsProperties org.springframework.cloud.stream.app.jms.source.JmsSourceConfiguration.jmsProperties; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.boot.autoconfigure.jms.JmsProperties] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
2016-11-24 12:37:15.806  INFO 1 --- [           main] o.apache.catalina.core.StandardService   : Stopping service Tomcat
2016-11-24 12:37:15.824 ERROR 1 --- [           main] o.s.boot.SpringApplication               : Application startup failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.cloud.stream.app.jms.source.JmsSourceConfiguration': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.boot.autoconfigure.jms.JmsProperties org.springframework.cloud.stream.app.jms.source.JmsSourceConfiguration.jmsProperties; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.boot.autoconfigure.jms.JmsProperties] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) ~[spring-boot-1.3.5.RELEASE.jar!/:1.3.5.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) [spring-boot-1.3.5.RELEASE.jar!/:1.3.5.RELEASE]
    at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) [spring-boot-1.3.5.RELEASE.jar!/:1.3.5.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-1.3.5.RELEASE.jar!/:1.3.5.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1191) [spring-boot-1.3.5.RELEASE.jar!/:1.3.5.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1180) [spring-boot-1.3.5.RELEASE.jar!/:1.3.5.RELEASE]
    at org.springframework.cloud.stream.app.jms.source.rabbit.JmsSourceRabbitApplication.main(JmsSourceRabbitApplication.java:29) [jms-source-rabbit.jar!/:1.0.3.RELEASE]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_102]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_102]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_102]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_102]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:54) [jms-source-rabbit.jar!/:1.0.3.RELEASE]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_102]
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.boot.autoconfigure.jms.JmsProperties org.springframework.cloud.stream.app.jms.source.JmsSourceConfiguration.jmsProperties; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.boot.autoconfigure.jms.JmsProperties] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:573) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    ... 23 common frames omitted
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.boot.autoconfigure.jms.JmsProperties] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1373) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1119) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545) ~[spring-beans-4.2.6.RELEASE.jar!/:4.2.6.RELEASE]
    ... 25 common frames omitted

2016-11-24 12:37:15.831  INFO 1 --- [           main] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [jar:file:/maven/jms-source-rabbit.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-core-4.2.11.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-aop-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/aopalliance-1.0.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-tx-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-context-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-autoconfigure-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/snakeyaml-1.16.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-retry-1.1.2.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-stream-1.0.3.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-messaging-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-beans-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-tuple-1.0.0.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/kryo-shaded-3.0.3.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/minlog-1.3.0.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-tuple-1.0.0.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/json-path-2.0.0.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/slf4j-api-1.7.21.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/json-smart-2.1.1.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/asm-1.0.2.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/asm-3.3.1.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-xml-4.2.11.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-xml-2.2.2.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-oxm-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-logging-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/logback-classic-1.1.7.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/logback-core-1.1.7.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jcl-over-slf4j-1.7.21.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jul-to-slf4j-1.7.21.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/log4j-over-slf4j-1.7.21.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-starter-config-1.1.2.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-starter-1.1.1.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-context-1.1.1.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-security-crypto-4.0.4.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-commons-1.1.1.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-security-rsa-1.0.1.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/bcpkix-jdk15on-1.47.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/bcprov-jdk15on-1.47.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-config-client-1.1.2.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-web-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jackson-annotations-2.6.6.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jackson-databind-2.6.6.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jackson-core-2.6.6.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-starter-stream-rabbit-1.0.3.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-stream-binder-rabbit-1.0.2.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-stream-codec-1.0.2.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-amqp-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-rabbit-1.5.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-amqp-1.5.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/http-client-1.0.0.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/httpclient-4.5.2.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/httpcore-4.4.4.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/commons-codec-1.9.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/amqp-client-3.5.7.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-amqp-4.2.11.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-actuator-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-actuator-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-web-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-tomcat-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/tomcat-embed-core-8.0.33.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/tomcat-embed-el-8.0.33.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/tomcat-embed-logging-juli-8.0.33.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/tomcat-embed-websocket-8.0.33.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-boot-starter-validation-1.3.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/hibernate-validator-5.2.4.Final.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/validation-api-1.1.0.Final.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jboss-logging-3.3.0.Final.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/classmate-1.1.0.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-webmvc-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-expression-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-jmx-4.2.5.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-cloud-starter-stream-source-jms-1.0.3.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-jms-4.2.11.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-jms-4.2.6.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-integration-java-dsl-1.1.3.RELEASE.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/reactive-streams-1.0.0.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/jms-api-1.1-rev-1.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/objenesis-2.1.jar!/, jar:file:/maven/jms-source-rabbit.jar!/lib/spring-core-4.2.6.RELEASE.jar!/]

I want to use the ActiveMQ connector.

chp008 commented 6 years ago

I have the same issue. How can I FIX IT?

artembilan commented 6 years ago

This issue goes from the situation that out-of-the-box application comes without any JMS vendor artifacts, therefore nor ConnectionFactory bean is created, neither the mentioned JmsProperties.

What you need to fix it is something like adding some JMS client jar. I even think that something like Spring Boot starter should be enough. For example for ActiveMQ: https://github.com/spring-projects/spring-boot/blob/master/spring-boot-project/spring-boot-starters/spring-boot-starter-activemq/pom.xml. Or Artemis: https://github.com/spring-projects/spring-boot/blob/master/spring-boot-project/spring-boot-starters/spring-boot-starter-artemis/pom.xml.

Some instruction is here: https://docs.spring.io/spring-cloud-stream-app-starters/docs/Darwin.RC1/reference/htmlsingle/#_patching_pre_built_applications.

Not sure that we can do something here as an out-of-the-box solution, but definitely we will add some note how to add an appropriate JMS artifact into the target application.

chp008 commented 6 years ago

Hi, I just follow your guide. it seems that if I include the JMS server, it will start a embedded server.

<dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-broker</artifactId>
            <exclusions>
                <exclusion>
                    <artifactId>geronimo-jms_1.1_spec</artifactId>
                    <groupId>org.apache.geronimo.specs</groupId>
                </exclusion>
            </exclusions>
        </dependency>

actually, I just want to use an independent active mq server.

Error: Could not refresh JMS Connection for destination 'omtopic' - retrying using FixedBackOff{interval=5000, currentAttempts=13, maxAttempts=unlimited}. Cause: Could not create Transport. Reason: java.io.IOException: Transport scheme NOT recognized: [vm]

I think I should need to configure some thing like jndi? how should I do it, please give an sample for it.

artembilan commented 6 years ago

Well, I showed you the way how it can be fixed from this project perspective. Everything else (especially JNDI) is out of scope of this project.

If the story is rally about JNDI, then you need to find what JMS client library you have to use. And also you need to patch this project with some extra @Configuration to provide a JNDI-based ConnectionFactory. You can consult about that process in the Docs I mentioned above.

mruv commented 5 years ago

I'm facing this particular error when using spring-boot version 2.1.2 and embedded activemq. I don't know why JmsTemplate can't be @Autowired. Everything was working well until recently.


org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'airtimeTxController': Unsatisfied dependency expressed through field 'aFixService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'airtimeFixTxService': Unsatisfied dependency expressed through field 'msgSender'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.jms.core.JmsTemplate' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:596) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:90) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:374) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1378) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda$106.00000000EC41B6C0.getObject(Unknown Source) ~[na:na]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:846) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:863) ~[spring-context-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) ~[spring-context-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:142) ~[spring-boot-2.1.2.RELEASE.jar:2.1.2.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775) [spring-boot-2.1.2.RELEASE.jar:2.1.2.RELEASE]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) [spring-boot-2.1.2.RELEASE.jar:2.1.2.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:316) [spring-boot-2.1.2.RELEASE.jar:2.1.2.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1260) [spring-boot-2.1.2.RELEASE.jar:2.1.2.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1248) [spring-boot-2.1.2.RELEASE.jar:2.1.2.RELEASE]
    at com.tanda.wallet.WalletApplication.main(WalletApplication.java:12) [classes/:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_202]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_202]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_202]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_202]
    at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.1.2.RELEASE.jar:2.1.2.RELEASE]
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'airtimeFixTxService': Unsatisfied dependency expressed through field 'msgSender'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.jms.core.JmsTemplate' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:596) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:90) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:374) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1378) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda$106.00000000EC41B6C0.getObject(Unknown Source) ~[na:na]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:277) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1244) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1164) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:593) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    ... 25 common frames omitted
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.jms.core.JmsTemplate' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1651) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1210) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1164) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:593) ~[spring-beans-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    ... 39 common frames omitted
artembilan commented 5 years ago

We can't answer to your problem without any code to play with.

Only what I see by your stack trace that JmsTemplate is not created by the JmsAutoConfiguration. just because there is no ConnectionFactory. In case of Artemis there has to be a org.apache.activemq.artemis.jms.server.embedded.EmbeddedJMS class in classpath.

So, please, share on GitHub a simple project with us to investigate what may be missed in your configuration or dependencies.

Thanks