title: Facing issues while using camel-sftp-kafka-connector in Apache kafka?
body: <p>i am trying to create a sftp connector in Apache kafka using camel-sftp-kafka-connector.</p>
  <p>i just downloaded the sftp-connector jar and pasted into the kafka's lib folder.</p>
  <p>while hitting /connector-plugins endpoint i can able to see the sftp-connector is available</p>
  <p><a href="https://i.stack.imgur.com/0rjiH.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0rjiH.png" alt="connector-plugins.img" /></a></p>
  <p>so below is my sample connector configuration</p>
  <pre><code>{
      &quot;name&quot;: &quot;camel-sftp-connector-1&quot;,
      &quot;config&quot;: {
          &quot;connector.class&quot;: &quot;org.apache.camel.kafkaconnector.sftp.CamelSftpSourceConnector&quot;,
          &quot;key.converter&quot;: &quot;org.apache.kafka.connect.storage.StringConverter&quot;,
          &quot;value.converter&quot;: &quot;org.apache.kafka.connect.converters.ByteArrayConverter&quot;,
          &quot;transforms&quot;: &quot;RemoteTransformer&quot;,
          &quot;transforms.RemoteTransformer.type&quot;: &quot;org.apache.camel.kafkaconnector.RemoteFileTransforms&quot;,
          &quot;topics&quot;: &quot;came-sftp-test-1&quot;,
          &quot;camel.source.path.host&quot;: &quot;192.168.30.167&quot;,
          &quot;camel.source.path.port&quot;: &quot;66&quot;,
          &quot;camel.source.path.directoryName&quot;: &quot;/csv/sample&quot;,
          &quot;camel.source.endpoint.recursive&quot;: &quot;true&quot;,
          &quot;camel.source.endpoint.username&quot;: &quot;sftpuser&quot;,
          &quot;camel.source.endpoint.password&quot;: &quot;sftppass&quot;,
          &quot;camel.source.endpoint.noop&quot;: &quot;/false&quot;,
          &quot;camel.source.endpoint.move&quot;: &quot;/done&quot;
      }
  }
  
  </code></pre>
  <p>I got the below exception and dont know how to fix it.</p>
  <pre><code>[2021-05-05 19:20:58,560] WARN /connectors (org.eclipse.jetty.server.HttpChannel)
  javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoClassDefFoundError: org/jctools/queues/MessagePassingQueue$Supplier
          at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:410)
          at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
          at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:366)
          at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:319)
          at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
          at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:763)
          at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:563)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
          at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
          at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
          at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
          at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
          at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
          at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
          at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:234)
          at org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:179)
          at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
          at org.eclipse.jetty.server.Server.handle(Server.java:516)
          at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
          at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
          at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
          at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)
          at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
          at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
          at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
          at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)
          at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)
          at java.base/java.lang.Thread.run(Thread.java:834)
  Caused by: org.glassfish.jersey.server.ContainerException: java.lang.NoClassDefFoundError: org/jctools/queues/MessagePassingQueue$Supplier
          at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:254)
          at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:236)
          at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:436)
          at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:261)
          at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
          at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
          at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
          at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
          at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
          at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
          at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
          at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:680)
          at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)
          ... 30 more
  Caused by: java.lang.NoClassDefFoundError: org/jctools/queues/MessagePassingQueue$Supplier
          at org.apache.camel.kafkaconnector.CamelSourceConnectorConfig.&lt;clinit&gt;(CamelSourceConnectorConfig.java:43)
          at org.apache.camel.kafkaconnector.sftp.CamelSftpSourceConnector.config(CamelSftpSourceConnector.java:29)
          at org.apache.kafka.connect.runtime.AbstractHerder.validateConnectorConfig(AbstractHerder.java:366)
          at org.apache.kafka.connect.runtime.AbstractHerder.lambda$validateConnectorConfig$1(AbstractHerder.java:326)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
          ... 1 more
  Caused by: java.lang.ClassNotFoundException: org.jctools.queues.MessagePassingQueue$Supplier
          at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
          at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
          at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
          ... 9 more
  [2021-05-05 19:20:58,562] WARN unhandled due to prior sendError (org.eclipse.jetty.server.HttpChannelState)
  javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoClassDefFoundError: org/jctools/queues/MessagePassingQueue$Supplier
          at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:410)
          at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
          at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:366)
          at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:319)
          at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
          at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:763)
          at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:563)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
          at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
          at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
          at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
          at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)
          at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
          at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
          at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
          at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:234)
          at org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:179)
          at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
          at org.eclipse.jetty.server.Server.handle(Server.java:516)
          at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
          at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
          at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
          at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)
          at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
          at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
          at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
          at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)
          at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)
          at java.base/java.lang.Thread.run(Thread.java:834)
  Caused by: org.glassfish.jersey.server.ContainerException: java.lang.NoClassDefFoundError: org/jctools/queues/MessagePassingQueue$Supplier
          at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:254)
          at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:236)
          at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:436)
          at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:261)
          at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
          at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
          at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
          at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
          at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
          at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
          at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
          at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:680)
          at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)
          ... 30 more
  Caused by: java.lang.NoClassDefFoundError: org/jctools/queues/MessagePassingQueue$Supplier
          at org.apache.camel.kafkaconnector.CamelSourceConnectorConfig.&lt;clinit&gt;(CamelSourceConnectorConfig.java:43)
          at org.apache.camel.kafkaconnector.sftp.CamelSftpSourceConnector.config(CamelSftpSourceConnector.java:29)
          at org.apache.kafka.connect.runtime.AbstractHerder.validateConnectorConfig(AbstractHerder.java:366)
          at org.apache.kafka.connect.runtime.AbstractHerder.lambda$validateConnectorConfig$1(AbstractHerder.java:326)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
          ... 1 more
  Caused by: java.lang.ClassNotFoundException: org.jctools.queues.MessagePassingQueue$Supplier
          at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
          at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
          at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
          ... 9 more
  
  </code></pre>
  <p>could anyone tell me what is the issue ?</p>
  <p>whether i am configuring in wrong way or else any extra jars need to be added?</p>