-
Notifications
You must be signed in to change notification settings - Fork 810
Description
I'm getting an error from StreamBridge when trying to send a message to a specific Kafka topic. Funny thing is that I only get this error sometimes. When I trigger the service manually it does not give any errors. I stuck with this error for a while
java.version = 17
org.springframework.boot = 2.6.4
spring-cloud.version = 2021.0.1
spring-cloud-starter-stream-kafka = 3.2.4
Code :
@Slf4j
@Service
@RequiredArgsConstructor
public class UpdateEventAdapter implements UpdateEventPort {
private final StreamBridge streamBridge;
@Async
@Override
public void instrumentUpdated(InstrumentUpdatedEvent instrumentUpdatedEvent) {
streamBridge.send(INSTRUMENT_UPDATED_PRODUCER, KafkaMessageBuilder.build(instrumentUpdatedEvent, instrumentUpdatedEvent.getUid()));
}
}
Trace:
va.util.concurrent.CompletionException: java.lang.IllegalArgumentException: Could not find class [org.springframework.boot.autoconfigure.condition.OnBeanCondition] at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315) ~[na:na] at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320) ~[na:na] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1770) ~[na:na] at util.TokenAwareRunnable.run(TokenAwareRunnable.java:28) ~[na:na] at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1395) ~[na:na] at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[na:na] at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[na:na] at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[na:na] at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[na:na] at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[na:na] Caused by: java.lang.IllegalArgumentException: Could not find class [org.springframework.boot.autoconfigure.condition.OnBeanCondition] at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:334) ~[spring-core-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.ConditionEvaluator.getCondition(ConditionEvaluator.java:124) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.java:96) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.java:88) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.java:71) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.AnnotatedBeanDefinitionReader.doRegisterBean(AnnotatedBeanDefinitionReader.java:254) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.AnnotatedBeanDefinitionReader.registerBean(AnnotatedBeanDefinitionReader.java:147) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.AnnotatedBeanDefinitionReader.register(AnnotatedBeanDefinitionReader.java:137) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.context.annotation.AnnotationConfigApplicationContext.register(AnnotationConfigApplicationContext.java:168) ~[spring-context-5.3.16.jar!/:5.3.16] at org.springframework.cloud.stream.binder.DefaultBinderFactory.initializeBinderContextSimple(DefaultBinderFactory.java:410) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.binder.DefaultBinderFactory.getBinderInstance(DefaultBinderFactory.java:265) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.binder.DefaultBinderFactory.doGetBinder(DefaultBinderFactory.java:223) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.binder.DefaultBinderFactory.getBinder(DefaultBinderFactory.java:151) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.binding.BindingService.getBinder(BindingService.java:389) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.binding.BindingService.bindProducer(BindingService.java:273) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.function.StreamBridge.resolveDestination(StreamBridge.java:282) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.function.StreamBridge.send(StreamBridge.java:210) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.function.StreamBridge.send(StreamBridge.java:164) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at org.springframework.cloud.stream.function.StreamBridge.send(StreamBridge.java:144) ~[spring-cloud-stream-3.2.2.jar!/:3.2.2] at com.getmidas.instrument.api.adapter.kafka.InstrumentUpdateEventAdapter.instrumentUpdated(InstrumentUpdateEventAdapter.java:24) ~[classes!/:0.0.1-SNAPSHOT] at com.getmidas.instrument.api.domain.service.StockService.sendInstrumentEvent(StockService.java:194) ~[classes!/:0.0.1-SNAPSHOT] at com.getmidas.instrument.api.domain.service.StockService.update(StockService.java:166) ~[classes!/:0.0.1-SNAPSHOT] at com.getmidas.instrument.api.domain.service.sync.instrument.tr.TrInstrumentSyncHelper.updateStock(TrInstrumentSyncHelper.java:92) ~[classes!/:0.0.1-SNAPSHOT] at com.getmidas.instrument.api.domain.service.sync.instrument.tr.TrInstrumentSyncHelper.syncHelper(TrInstrumentSyncHelper.java:36) ~[classes!/:0.0.1-SNAPSHOT] at com.getmidas.instrument.api.domain.service.sync.instrument.tr.TrInstrumentSyncService.lambda$syncCompletable$5(TrInstrumentSyncService.java:86) ~[classes!/:0.0.1-SNAPSHOT] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[na:na] ... 7 common frames omitted Caused by: java.lang.ClassNotFoundException: org.springframework.boot.autoconfigure.condition.OnBeanCondition at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[na:na] at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[na:na] at java.base/java.lang.Class.forName0(Native Method) ~[na:na] at java.base/java.lang.Class.forName(Class.java:467) ~[na:na] at org.springframework.util.ClassUtils.forName(ClassUtils.java:284) ~[spring-core-5.3.16.jar!/:5.3.16] at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:324) ~[spring-core-5.3.16.jar!/:5.3.16]
Metadata
Metadata
Assignees
Labels
Type
Projects
Status