Apache Camel Elasticsearch endpoint failing with ClassNotFound Exception: org.elasticsearch.common.CheckedConsumer

Viewed 43

I'm trying to index the data into elastic search through apache camel

Spring version - 2.6.6
Camel-spring-boot-starter - 3.18.0
camel-kafka - 3.18.0
camel-elasticsearch-rest - 3.18.0

This is my code

      from("{{kafka.consumer.test}}")
          .process(new TestProcessor())
          .to("elasticsearch-rest://test-cluster?operation=Index&indexName=test");

I'm getting this exception

org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[]
    at org.apache.camel.CamelExecutionException.wrapCamelExecutionException(CamelExecutionException.java:45) ~[camel-api-3.16.0.jar:3.16.0]
    at org.apache.camel.support.AbstractExchange.setException(AbstractExchange.java:595) ~[camel-support-3.16.0.jar:3.16.0]
    at org.apache.camel.support.DefaultExchange.setException(DefaultExchange.java:27) ~[camel-support-3.16.0.jar:3.16.0]
    at org.apache.camel.support.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:69) ~[camel-support-3.16.0.jar:3.16.0]
    at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:172) ~[camel-core-processor-3.16.0.jar:3.16.0]
    at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:471) ~[camel-core-processor-3.16.0.jar:3.16.0]
    at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:193) ~[camel-base-engine-3.16.0.jar:3.16.0]
    at org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:64) ~[camel-base-engine-3.16.0.jar:3.16.0]
    at org.apache.camel.processor.Pipeline.process(Pipeline.java:184) ~[camel-core-processor-3.16.0.jar:3.16.0]
    at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:399) ~[camel-base-engine-3.16.0.jar:3.16.0]
    at org.apache.camel.impl.engine.DefaultAsyncProcessorAwaitManager.process(DefaultAsyncProcessorAwaitManager.java:83) ~[camel-base-engine-3.16.0.jar:3.16.0]
    at org.apache.camel.support.AsyncProcessorSupport.process(AsyncProcessorSupport.java:41) ~[camel-support-3.16.0.jar:3.16.0]
    at org.apache.camel.component.kafka.consumer.support.KafkaRecordProcessor.processExchange(KafkaRecordProcessor.java:109) ~[camel-kafka-3.16.0.jar:3.16.0]
    at org.apache.camel.component.kafka.consumer.support.KafkaRecordProcessorFacade.processRecord(KafkaRecordProcessorFacade.java:120) ~[camel-kafka-3.16.0.jar:3.16.0]
    at org.apache.camel.component.kafka.consumer.support.KafkaRecordProcessorFacade.processPolledRecords(KafkaRecordProcessorFacade.java:80) ~[camel-kafka-3.16.0.jar:3.16.0]
    at org.apache.camel.component.kafka.KafkaFetchRecords.startPolling(KafkaFetchRecords.java:280) ~[camel-kafka-3.16.0.jar:3.16.0]
    at org.apache.camel.component.kafka.KafkaFetchRecords.run(KafkaFetchRecords.java:181) ~[camel-kafka-3.16.0.jar:3.16.0]
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[na:na]
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
    at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
Caused by: java.lang.NoClassDefFoundError: org/elasticsearch/common/CheckedConsumer
    at org.apache.camel.component.elasticsearch.ElasticsearchProducer$HighLevelClient.<init>(ElasticsearchProducer.java:339) ~[camel-elasticsearch-rest-3.4.0.jar:3.4.0]
Caused by: java.lang.NoClassDefFoundError: org/elasticsearch/common/CheckedConsumer

Even I tried changing the versions, but it didn't work.

0 Answers
Related