MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Utilisation d'Hibernate OGM avec le cloud MongoDB Atlas M0 (niveau gratuit)

Il est possible que quelque chose ne va pas dans la façon dont Hibernate OGM crée le client.

Je pense que le moyen le plus simple de vérifier cela maintenant pour vous est de remplacer le MongoDBDatastoreProvider et fournissez un MongoClient initialisé.

Vous pouvez le faire en étendant MongoDBDatastoreProvider et en remplaçant la méthode createMongoClient. Quelque chose comme :

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(...);
    }

}

puis utilisez la propriété OgmProperties.DATASTORE_PROVIDER pour utiliser votre fournisseur de datastore :

hibernate.ogm.datastore.provider = org.myprojects.MYCustomMongoDBDatastoreProvider

Dans cet exemple, je le configure dans le fichier hibernate.properties mais vous pouvez le définir là où cela a plus de sens pour votre projet.

MODIFIER :Explications supplémentaires sur l'erreur.

Je pense que le problème est que nous n'utilisons pas l'usine pour créer le client mongo .

MODIFICATION 2  :Le problème peut être causé par un manque de prise en charge de SSL.Un problème a été créé et contient plus d'informations