Ksql: KSQL java client error while connecting to KSQL server

Created on 6 Jul 2020  路  3Comments  路  Source: confluentinc/ksql

I was trying to use KSQL java client.

KSQL server is accessible from KSQL CLI through the below commands.

docker-compose exec ksql-cli ksql http://192.168.0.78:8088 docker-compose exec ksql-cli ksql http://ksql-server:8088

but I am facing the below error from stand alone KSQL java client application.

Exception in thread "main" java.util.concurrent.ExecutionException: io.confluent.ksql.api.client.exception.KsqlClientException: Received 404 response from server: HTTP 404 Not Found. Error code: 40400 at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895) at com.ksqldb.java.client.ksqldb.ExampleApp.main(ExampleApp.java:59) Caused by: io.confluent.ksql.api.client.exception.KsqlClientException: Received 404 response from server: HTTP 404 Not Found. Error code: 40400 at io.confluent.ksql.api.client.impl.ClientImpl.lambda$handleErrorResponse$4(ClientImpl.java:243) at io.vertx.core.http.impl.HttpClientResponseImpl$BodyHandler.notifyHandler(HttpClientResponseImpl.java:292) at io.vertx.core.http.impl.HttpClientResponseImpl.lambda$bodyHandler$0(HttpClientResponseImpl.java:193) at io.vertx.core.http.impl.HttpClientResponseImpl.handleEnd(HttpClientResponseImpl.java:248) at io.vertx.core.http.impl.Http1xClientConnection$StreamImpl.lambda$beginResponse$0(Http1xClientConnection.java:480) at io.vertx.core.streams.impl.InboundBuffer.handleEvent(InboundBuffer.java:237) at io.vertx.core.streams.impl.InboundBuffer.write(InboundBuffer.java:127) at io.vertx.core.http.impl.Http1xClientConnection$StreamImpl.endResponse(Http1xClientConnection.java:499) at io.vertx.core.http.impl.Http1xClientConnection$StreamImpl.access$000(Http1xClientConnection.java:237) at io.vertx.core.http.impl.Http1xClientConnection.handleResponseEnd(Http1xClientConnection.java:632) at io.vertx.core.http.impl.Http1xClientConnection.handleHttpMessage(Http1xClientConnection.java:592) at io.vertx.core.http.impl.Http1xClientConnection.handleMessage(Http1xClientConnection.java:566) at io.vertx.core.impl.ContextImpl.executeTask(ContextImpl.java:369) at io.vertx.core.impl.EventLoopContext.execute(EventLoopContext.java:43) at io.vertx.core.impl.ContextImpl.executeFromIO(ContextImpl.java:232) at io.vertx.core.net.impl.VertxHandler.channelRead(VertxHandler.java:173) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:714) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:650) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:576) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.lang.Thread.run(Thread.java:748)

needs-triage question

Most helpful comment

@bhargav516 can you please let me know what did you change to get it working?

I have downloaded latest confluent platform, below are my ksql server details (when I try to connect via ksql shell command)

CLI v5.5.1, Server v5.5.1 located at http://localhost:8088

Followed this doc but ran into same issue.

@rtrg KSQL java Client doesn't work with any of KSQL server

We need to upgrade KSQL server to KSQLDB at the first and have a right version of KSQLDB (0.10.0)
then KSQL java client allows you to execute KSQL pull and push queries.

I will spin off a repo and add a link here.

All 3 comments

I was using KSQL server and haven't migrated from KSQL server to KSQLDB.

So I was facing the error

@bhargav516 can you please let me know what did you change to get it working?

I have downloaded latest confluent platform, below are my ksql server details (when I try to connect via ksql shell command)

CLI v5.5.1, Server v5.5.1 located at http://localhost:8088

Followed this doc but ran into same issue.

@bhargav516 can you please let me know what did you change to get it working?

I have downloaded latest confluent platform, below are my ksql server details (when I try to connect via ksql shell command)

CLI v5.5.1, Server v5.5.1 located at http://localhost:8088

Followed this doc but ran into same issue.

@rtrg KSQL java Client doesn't work with any of KSQL server

We need to upgrade KSQL server to KSQLDB at the first and have a right version of KSQLDB (0.10.0)
then KSQL java client allows you to execute KSQL pull and push queries.

I will spin off a repo and add a link here.

Was this page helpful?
0 / 5 - 0 ratings