Es ist möglich, dass etwas mit der Art und Weise, wie Hibernate OGM den Client erstellt, nicht stimmt.
Ich denke, der einfachere Weg, dies jetzt für Sie zu überprüfen, besteht darin, den MongoDBDatastoreProvider
zu überschreiben und stellen Sie einen initialisierten MongoClient bereit.
Sie können dies tun, indem Sie MongoDBDatastoreProvider erweitern und die Methode createMongoClient überschreiben. Etwas wie:
package org.myprojects;
import org.hibernate.ogm.datastore.mongodb.impl.MongoDBDatastoreProvider;
public class MYCustomMongoDBDatastoreProvider extends MongoDBDatastoreProvider {
@Override
protected MongoClient createMongoClient(MongoDBConfiguration config) {
return MongoClients.create(...);
}
}
Verwenden Sie dann die Eigenschaft OgmProperties.DATASTORE_PROVIDER
So verwenden Sie Ihren Datenspeicheranbieter:
hibernate.ogm.datastore.provider = org.myprojects.MYCustomMongoDBDatastoreProvider
In diesem Beispiel setze ich es in der Datei hibernate.properties, aber Sie können es dort setzen, wo es für Ihr Projekt sinnvoller ist.
BEARBEITEN :Zusätzliche Erläuterungen zum Fehler.
Ich denke, das Problem ist, dass wir die Factory nicht verwenden, um den Mongo-Client zu erstellen .
BEARBEITEN 2 :Das Problem könnte durch mangelnde Unterstützung für SSL verursacht werden.Ein Problem wurde erstellt und enthält weitere Informationen