私はhongnate OGMを使用してmongoDBと通信しています。ビジネス要件の一部として、私はssl
をmongodbと私のJavaアプリケーション間の通信に有効にする必要があります。hongnate OGMを使用してmongoDBのSSLを有効にします
mongodbのマニュアルでは、mongodb-java-driverを使用すると、接続文字列でsslフラグをtrueにするのと同じくらい簡単です。休止状態でどうすればいいですか?
のみ与えられた回答に基づいて===== UPDATE MongoClientOptions.BuilderのSSLプロパティを含まない======
のHibernate OGMバージョン4.2使用MongoDBのJavaドライババージョン2.13クラス。私はhibernateOGMのバージョンをまだベータかアルファのどちらかでアップグレードすることができません。私はアップデート2 ==============に========
を私は明示的にJavaドライバのバージョンをアップグレードしようとしたが、その後、私は例外java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.ogm.datastore.mongodb.options.impl.WriteConcernOption
を取得し始めましたmongodb javaドライバのドキュメントを調べて、socketFactory
オプションをSSLSocketFactory
に設定すると、その罠に入る可能性があることがわかりました(https://docs.mongodb.org/v2.6/tutorial/configure-ssl-clients/#java参照)。しかし、OGM 4.2はMongoのクライアントを作成するためのSSLSocketFactoryを使用するには、次のプロパティを拾っていない休止状態のように思える: hibernate.ogm.mongodb.driver.socketFactory=SSLSocketFactory
あなたの提案に照らして質問を更新しましたが、別の問題が発生しました。他の選択肢がありますか? –
現在、公開されている問題があります:https://hibernate.atlassian.net/browse/OGM-975 – Davide
MongoDBDatastoreProviderメソッドを拡張する方法があります:protected MongoClient createMongoClient(MongoDBConfiguration config)を使用し、パラメータとして 'hibernate .ogm.datastore.provider'。 – Davide