简体   繁体   English

ClassCastException:com.datastax.oss.driver.internal.core.type.DefaultListType 无法转换为 class com.datastax.oss.driver.api.core.type.SetType

[英]ClassCastException: com.datastax.oss.driver.internal.core.type.DefaultListType cannot be cast to class com.datastax.oss.driver.api.core.type.SetType

until the migration from spring-boot-starter-parent 2.1.8 to 2.5.2 I got the following error and I don't find the solution.直到从 spring-boot-starter-parent 2.1.8 迁移到 2.5.2 我收到以下错误并且我没有找到解决方案。

When I execute a save on my reactives repostiories, I got the following error below, and I don't find any solution.当我对我的 reactives 存储库执行保存时,出现以下错误,我没有找到任何解决方案。 Anyone else have a solution please?请问还有其他人有解决办法吗?

reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.ClassCastException: class com.datastax.oss.driver.internal.core.type.DefaultListType cannot be cast to class com.datastax.oss.driver.api.core.type.SetType (com.datastax.oss.driver.internal.core.type.DefaultListType and com.datastax.oss.driver.api.core.type.SetType are in unnamed module of loader 'app') Caused by: java.lang.ClassCastException: class com.datastax.oss.driver.internal.core.type.DefaultListType cannot be cast to class com.datastax.oss.driver.api.core.type.SetType (com.datastax.oss.driver.internal.core.type.DefaultListType and com.datastax.oss.driver.api.core.type.SetType are in unnamed module of loader 'app') at com.datastax.oss.driver.internal.core.type.codec.registry.CachingCodecRegistry.inspectType(CachingCodecRegistry.java:3 reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.ClassCastException: class com.datastax.oss.driver.internal.core.type.DefaultListType cannot be cast to class com.datastax.oss.driver.api.core.type.SetType (com.datastax.oss.driver.internal.core.type.DefaultListType 和 com.datastax.oss.driver.api.core.type.SetType 位于加载程序“app”的未命名模块中) 原因:java.lang.ClassCastException : class com.datastax.oss.driver.internal.core.type.DefaultListType 无法转换为 class com.datastax.oss.driver.api.core.type.SetType (com.datadrivestax type.DefaultListType 和 com.datastax.oss.driver.api.core.type.SetType 位于加载程序“app”的未命名模块中)位于 com.datastax.oss.driver.internal.core.type.codec.registry.CachingCodecRegistry。 inspectType(CachingCodecRegistry.java:3 59) at com.datastax.oss.driver.internal.core.type.codec.registry.CachingCodecRegistry.codecFor(CachingCodecRegistry.java:256) at com.datastax.oss.driver.internal.core.data.ValuesHelper.encodePreparedValues(ValuesHelper.java:112) at com.datastax.oss.driver.internal.core.cql.DefaultPreparedStatement.boundStatementBuilder(DefaultPreparedStatement.java:187) at org.springframework.data.cassandra.core.PreparedStatementDelegate.bind(PreparedStatementDelegate.java:51) at org.springframework.data.cassandra.core.ReactiveCassandraTemplate$PreparedStatementHandler.bindValues(ReactiveCassandraTemplate.java:1040) at org.springframework.data.cassandra.core.cql.ReactiveCqlTemplate.lambda$null$6(ReactiveCqlTemplate.java:577) at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:152) at reactor.core.publisher.MonoFlatMapMany.subscribeOrReturn(MonoFlatMapMany.882132 59) 在 com.datastax.oss.driver.internal.core.type.codec.registry.CachingCodecRegistry.codecFor(CachingCodecRegistry.java:256) 在 com.datastax.oss.driver.internal.core.data.ValuesPreParedValues ValuesHelper.java:112) at com.datastax.oss.driver.internal.core.cql.DefaultPreparedStatement.boundStatementBuilder(DefaultPreparedStatement.java:187) at org.springframework.data.cassandra.core.PreparedStatementDelegate.bind(PreparedStatementDelegate.java: 51) at org.springframework.data.cassandra.core.ReactiveCassandraTemplate$PreparedStatementHandler.bindValues(ReactiveCassandraTemplate.java:1040) at org.springframework.data.cassandra.core.cql.ReactiveCqlTemplate.lambda$null$6(ReactiveCqlTemplate.java:577 ) 在 reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:152) 在 reactor.core.publisher.MonoFlatMapMany.subscribeOrReturn(MonoFlatMapMany.882132) 46945888:49) at reactor.core.publisher.Flux.subscribe(Flux.java:8221) at reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onNext(MonoFlatMapMany.java:195) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1815) at reactor.core.publisher.MonoCompletionStage.lambda$subscribe$0(MonoCompletionStage.java:82) at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2251) at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:143) at reactor.core.publisher.MonoCompletionStage.subscribe(MonoCompletionStage.java:57) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.882132469 46945888:49) 在 reactor.core.publisher.Flux.subscribe(Flux.java:8221) 在 reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onNext(MonoFlatMapMany.java:195) 在 reactor.core.publisher.Operators$MonoSubscriber .complete(Operators.java:1815) 在 reactor.core.publisher.MonoCompletionStage.lambda$subscribe$0(MonoCompletionStage.java:82) 在 java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(Completable1852.868) at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2251) at java.base/java.util .concurrent.CompletableFuture.whenComplete(CompletableFuture.java:143) 在 reactor.core.publisher.MonoCompletionStage.subscribe(MonoCompletionStage.java:57) 在 reactor.core.publisher.MonoDefer.subscribe(MonoDefer.882132469) 45888:52) at reactor.core.publisher.Flux.subscribe(Flux.java:8235) at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:200) at reactor.core.publisher.MonoFlatMapMany.subscribeOrReturn(MonoFlatMapMany.java:49) at reactor.core.publisher.Mono.subscribe(Mono.java:4135) at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:200) at reactor.core.publisher.MonoFlatMapMany.subscribeOrReturn(MonoFlatMapMany.java:49) at reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:74) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) at reactor.core.publisher.Mono.subscribe(Mono.java:4150) at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:203) at reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53) at reactor.core.publisher.Mono.subscr 45888:52) 在 reactor.core.publisher.Flux.subscribe(Flux.java:8235) .java:49) 在 reactor.core.publisher.Mono.subscribe(Mono.java:4135) 在 reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:200) 在 reactor.core.MonoscribeManoscribeManoplisherMap.8888:200 MonoFlatMapMany.java:49) 在 reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:74) 在 reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) 在 reactor.core.publisher.88753subscribe.887536784 (Mono.java:4150) 在 reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:203) 在 reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53) 在 reactor.48.8.876588:53)订阅ibe(Mono.java:4135) at reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:426) at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:270) at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:228) at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:371) at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:164) at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:86) at reactor.core.publisher.Flux.subscribe(Flux.java:8235) at reactor.core.publisher.FluxUsingWhen.subscribe(FluxUsingWhen.java:93) at reactor.core.publisher.Flux.subscribe(Flux.java:8235) at reactor.core.publisher.Flux.subscribeWith(Flux.java:8408) at reactor.core.publisher.Flux.subscribe(Flux.java:8205) at reactor.core.publisher.Flux.subscribe(Flux.java:8129) ibe(Mono.java:4135) 在 reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:426) 在 reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:270) reactor .publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:228) 在 reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:371) 在 reactor.core.publisher.FluxIterable.subscribe(FluxIterable8:88694613) ) 在 reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:86) 在 reactor.core.publisher.Flux.subscribe(Flux.java:8235) 在 reactor.core.publisher.FluxUsingWhen.subscribe(FluxUsingWhen.java: 93) 在 reactor.core.publisher.Flux.subscribe(Flux.java:8235) 在 reactor.core.publisher.Flux.subscribeWith(Flux.java:8408) 在 reactor.core.publisher.Flux.subscribe(Flux.java) :8205) 在 reactor.core.publisher.Flux.subscribe(Flux.java:8129) at reactor.core.publisher.Flux.subscribe(Flux.java:8047) at fr.contractsink.services.ContractConsumer.receive(ContractConsumer.java:71) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:171) at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:120) at org.springframework.kafka.listener.adapter.HandlerAdapter.invoke(HandlerAdapter.java:56) at org.springframework.kafka.listener.adapter.MessagingMessageListe在 reactor.core.publisher.Flux.subscribe(Flux.java:8047) 在 fr.contractsink.services.ContractConsumer.receive(ContractConsumer.java:71) 在 java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invo Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java .lang.reflect.Method.invoke(Method.java:566) 在 org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:171) 在 org.springframework.messaging.handler.invocation.Invocable.invocableHandvolerMethod (InvocableHandlerMethod.java:120)在 org.springframework.kafka.listener.adapter.HandlerAdapter.invoke(HandlerAdapter.java:56)在 org.springframework.kafka.listener.adapter.MessagingMessageListe nerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:347) at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:92) at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:53) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeOnMessage(KafkaMessageListenerContainer.java:2319) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeOnMessage(KafkaMessageListenerContainer.java:2300) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeRecordListener(KafkaMessageListenerContainer.java:2214) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeWithRecords(KafkaMessageListenerContainer.java:2139) nerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:347) at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:92) at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java: 53) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeOnMessage(KafkaMessageListenerContainer.java:2319) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeOnMessage(KafkaMessageListenerContainer.java:2300) at org.springframework.kafka .listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeRecordListener(KafkaMessageListenerContainer.java:2214) 在 org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeWithRecords(KafkaMessageListenerContainer.882132469413888):2 at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeRecordListener(KafkaMessageListenerContainer.java:2021) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeListener(KafkaMessageListenerContainer.java:1703) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeIfHaveRecords(KafkaMessageListenerContainer.java:1272) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.pollAndInvoke(KafkaMessageListenerContainer.java:1264) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.run(KafkaMessageListenerContainer.java:1161) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264) at java.base/java.util.concurre at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeRecordListener(KafkaMessageListenerContainer.java:2021) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeListener(KafkaMessageListenerContainer.java:1703) at org.springframework.kafka.listener .KafkaMessageListenerContainer$ListenerConsumer.invokeIfHaveRecords(KafkaMessageListenerContainer.java:1272) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.pollAndInvoke(KafkaMessageListenerContainer.java:1264) at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.run(KafkaMessageListenerContainer .java:1161) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java :264) 在 java.base/java.util.concurre nt.FutureTask.run(FutureTask.java) at java.base/java.lang.Thread.run(Thread.java:829) nt.FutureTask.run(FutureTask.java) 在 java.base/java.lang.Thread.run(Thread.java:829)

The only dependency declared for cassandra in my pom.xml is:在我的 pom.xml 中为 cassandra 声明的唯一依赖项是:

 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-cassandra-reactive</artifactId> </dependency>

enter image description here Thank a lot and best best regards, Adrien在此输入图片描述非常感谢和最诚挚的问候, 阿德里安

I had the same problem.我有同样的问题。 The problem was the repository has parameter of Collection type that was used in the IN predicate for the query.问题是存储库具有 Collection 类型的参数,该参数在查询的 IN 谓词中使用。

For that parameter sometimes Set was passed, sometimes list, and HashSet caused the problem.对于该参数,有时会传递 Set,有时会传递列表,而 HashSet 会导致问题。 I've changed Collection to List in the repository method signature, added coversion to the list for Set, and everything started to work.我已经在存储库方法签名中将 Collection 更改为 List,将 coversion 添加到 Set 的列表中,一切都开始工作了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Java,Spark和Cassandra java.lang.ClassCastException:com.datastax.driver.core.DefaultResultSetFuture无法转换为阴影 - Java, Spark and Cassandra java.lang.ClassCastException: com.datastax.driver.core.DefaultResultSetFuture cannot be cast to shade com.datastax.oss.driver.api.core.DriverTimeoutException:查询“SELECT * FROM system.peers”在 PT0.5S 后超时 - com.datastax.oss.driver.api.core.DriverTimeoutException: query 'SELECT * FROM system.peers' timed out after PT0.5S 使用Datastax Java驱动程序的com.datastax.driver.core.exceptions.InvalidQueryException - com.datastax.driver.core.exceptions.InvalidQueryException using Datastax Java driver Cassandra-Java-driver:com.datastax.driver.core.exceptions.InvalidTypeException:类型无效,列为列表,但提供了类java.lang.String - Cassandra-Java-driver : com.datastax.driver.core.exceptions.InvalidTypeException: Invalid type, column is a list but class java.lang.String provided 删除表不起作用-com.datastax.driver.core - drop table not working - com.datastax.driver.core com.datastax.driver.core.exceptions.InvalidQueryException:未配置的表用户” - com.datastax.driver.core.exceptions.InvalidQueryException: unconfigured table user" package com.datastax.driver.core 不存在 - package com.datastax.driver.core does not exist 注入点对类的不满意依赖。 未找到参考 com.datastax.driver.core.Cluster - Unsatisfied dependencies for class at injection point. Reference not found com.datastax.driver.core.Cluster Cassandra-com.datastax.driver.core.exceptions.DriverException:尝试获取可用连接时超时 - Cassandra - com.datastax.driver.core.exceptions.DriverException: Timeout while trying to acquire available connection 引起原因:com.datastax.driver.core.exceptions.SyntaxError:行0:-1输入不匹配&#39; <EOF> &#39;期待&#39;)&#39; - Caused by: com.datastax.driver.core.exceptions.SyntaxError: line 0:-1 mismatched input '<EOF>' expecting ')'
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM