Ich verwende diesen Code, um eine Verbindung zur localhost mongodb-Datenbank herzustellen. nach der Verbindung, wenn ich Daten abrufen möchte, bekomme ich diese Ausnahme.Fehler auf asynchronen mongodb-Client vert.x
SEVERE: com.mongodb.internal.async.ErrorHandlingResultCallback.errorHandlingCallback(Lcom/mongodb/async/SingleResultCallback;)Lcom/mongodb/async/SingleResultCallback;
java.lang.NoSuchMethodError: com.mongodb.internal.async.ErrorHandlingResultCallback.errorHandlingCallback(Lcom/mongodb/async/SingleResultCallback;)Lcom/mongodb/async/SingleResultCallback;
at com.mongodb.async.client.MongoClientImpl$2.execute(MongoClientImpl.java:100)
at com.mongodb.async.client.OperationIterable.batchCursor(OperationIterable.java:132)
at com.mongodb.async.client.OperationIterable.into(OperationIterable.java:64)
at com.mongodb.async.client.FindIterableImpl.into(FindIterableImpl.java:162)
at io.vertx.ext.mongo.impl.MongoClientImpl.findWithOptions(MongoClientImpl.java:235)
at io.vertx.ext.mongo.impl.MongoClientImpl.find(MongoClientImpl.java:217)
at verticle.ServerVerticle.start(ServerVerticle.java:53)
at io.vertx.core.impl.DeploymentManager.lambda$doDeploy$8(DeploymentManager.java:434)
at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:316)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:418)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:440)
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873)
at java.lang.Thread.run(Thread.java:745)
mein Code:
MongoClient mongoClient = MongoClient.createShared(vertx, config().getJsonObject("mongodb"));
mongoClient.find("user",new JsonObject(),res->{
if (res.succeeded()){
List<JsonObject> jsonObjects=res.result();
String name="ali";
LOGGER.warn(jsonObjects.toString());
}
else{
String name="name";
}
});
MongoDB Config unterhalb enthält db_name kommt, Port, Host und weitere Optionen, die ich für mongodb .Diese Optionen korrekt funktionieren Verbindung zur Datenbank müssen synchronisieren Client (I verwendet Vor).
"mongodb": {
"host" : "127.0.0.1",
"port" : 27017,
"db_name":"amibackend",
"maxPoolSize" : 50,
"minPoolSize" : 25,
"maxIdleTimeMS" : 300000,
"maxLifeTimeMS" : 3600000,
"waitQueueMultiple" : 10,
"waitQueueTimeoutMS" : 10000,
"maintenanceFrequencyMS" : 2000,
"maintenanceInitialDelayMS" : 500
}
=========================================== =====
Abhängigkeiten dieses Projektes: (Vert.x)
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>3.3.3</version>
</dependency>
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-web</artifactId>
<version>3.3.3</version>
</dependency>
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-mongo-client</artifactId>
<version>3.3.3</version>
</dependency>
Können Sie Ihre Abhängigkeiten der Post hinzu? Das sieht nach einem Jar-Kompatibilitätsproblem aus. Überprüfen Sie insbesondere, ob die Version des mongo-asyn-Treibers mit dem von Ihnen verwendeten Vert-Client kompatibel ist. – Veeram
hinzugefügt Abhängigkeiten. @ Veeram – WARM