Felix Huisinga created CAMEL-21419:
--------------------------------------

             Summary: Camel Spring Boot v. 4.8.1: Multiple Task Executor Beans 
Detected
                 Key: CAMEL-21419
                 URL: https://issues.apache.org/jira/browse/CAMEL-21419
             Project: Camel
          Issue Type: Bug
          Components: camel-spring-boot
    Affects Versions: 4.8.1
            Reporter: Felix Huisinga


On upgrading from Camel 4.8.0 to 4.8.1, the app is resulting in application 
startup failure. The root cause is a conflict between two beans: 
{{applicationTaskExecutor}} and {{{}taskScheduler{}}}, both of which are being 
detected by 
{{{}org.apache.camel.component.platform.http.springboot.SpringBootPlatformHttpAutoConfiguration{}}}.

Removing the {{@EnableScheduling}} fixes is as there will no longer be two 
Executor Beans. However, this will result in us not being able to use Spring 
scheduler.

+Below is the Log:+

 
2024-11-05T15:24:21.657+01:00  WARN 89193 --- [service-name] [           main] 
ConfigServletWebServerApplicationContext : Exception encountered during context 
initialization - cancelling refresh attempt: 
org.springframework.beans.factory.UnsatisfiedDependencyException: Error 
creating bean with name 
'org.apache.camel.component.platform.http.springboot.SpringBootPlatformHttpAutoConfiguration':
 Unsatisfied dependency expressed through field 'executor': No qualifying bean 
of type 'java.util.concurrent.Executor' available: expected single matching 
bean but found 2: applicationTaskExecutor,taskScheduler
2024-11-05T15:24:21.659+01:00  INFO 89193 --- [service-name] [           main] 
o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2024-11-05T15:24:21.669+01:00  INFO 89193 --- [service-name] [           main] 
.s.b.a.l.ConditionEvaluationReportLogger : 
 
Error starting ApplicationContext. To display the condition evaluation report 
re-run your application with 'debug' enabled.
2024-11-05T15:24:21.675+01:00 ERROR 89193 --- [service-name] [           main] 
o.s.b.d.LoggingFailureAnalysisReporter   : 
 
***************************
APPLICATION FAILED TO START
***************************
 
Description:
 
Field executor in 
org.apache.camel.component.platform.http.springboot.SpringBootPlatformHttpAutoConfiguration
 required a single bean, but 2 were found:
- applicationTaskExecutor: defined by method 'applicationTaskExecutor' in class 
path resource 
[org/springframework/boot/autoconfigure/task/TaskExecutorConfigurations$TaskExecutorConfiguration.class]
- taskScheduler: defined by method 'taskScheduler' in class path resource 
[org/springframework/boot/autoconfigure/task/TaskSchedulingConfigurations$TaskSchedulerConfiguration.class]
 
This may be due to missing parameter name information
 
Action:
 
Consider marking one of the beans as @Primary, updating the consumer to accept 
multiple beans, or using @Qualifier to identify the bean that should be consumed
 
Ensure that your compiler is configured to use the '-parameters' flag.
You may need to update both your build tool settings as well as your IDE.
(See 
https://github.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-6.x#parameter-name-retention)
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to