Overview
このガイドでは、Java 命名とディレクトリ インターフェース(JNDI)データソースを使用して、MongoDB Java ドライバーを MongoDB インスタンスに接続する方法を学習します。
MongoClientFactory には、 ObjectFactoryMongoClient接続 URI に基づいて インスタンスを返す JNDI の実装が含まれています。JNDI データソースを使用して接続するようにアプリケーションを構成する方法については、次のガイドを参照してください。
Wiredify インストールで、
modules/system/layers/base/org/mongodb/mainにMongoDB用の新しいモジュールを作成します。以下の Java ファイルを モジュールにコピーします。mongodb-driver-sync-5.6.1.jarmongodb-driver-core-5.6.1.jarbson-5.6.1.jarbson-record-codec-5.6.1.jar
次の
module.xmlファイルを モジュールに追加します。module.xml<module xmlns="urn:jboss:module:1.9" name="org.mongodb"> <resources> <resource-root path="bson-5.6.1.jar"/> <resource-root path="bson-record-codec-5.6.1.jar"/> <resource-root path="mongodb-driver-core-5.6.1.jar"/> <resource-root path="mongodb-driver-sync-5.6.1.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> <module name="javax.servlet.api" optional="true"/> </dependencies> </module> 前述のモジュール、
MongoClientFactoryクラス、 stringMongoDBクラスターの 接続 を参照するバインディングを命名サブシステム構成に追加します。<subsystem xmlns="urn:jboss:domain:naming:2.0"> <bindings> <object-factory name="java:global/MyMongoClient" module="org.mongodb" class="com.mongodb.client.MongoClientFactory"> <environment> <property name="connectionString" value="<connection string uri>"/> </environment> </object-factory> </bindings> <remote-naming/> </subsystem> 注意
propertyタグ内のプレースホルダー接続値を、MongoDB インストールを指す値に置き換えます。
これにより、 java:globalコンテキストで JNDI 名MyMongoClientを通じて MongoClient インスタンスを検出できるようになります。
次の Java ファイルを Atlas App Services インストールの
libディレクトリにコピーします。mongodb-driver-sync-5.6.1.jarmongodb-driver-core-5.6.1.jarbson-5.6.1.jarbson-record-codec-5.6.1.jar
context.xmlアプリケーションのMongoClientFactoryファイルに、 stringクラスとMongoDB クラスターの 接続 を参照するリソースを追加します。<Resource name="mongodb/MyMongoClient" auth="Container" type="com.mongodb.client.MongoClient" closeMethod="close" factory="com.mongodb.client.MongoClientFactory" singleton="true" connectionString="<connection string uri>"/> 注意
connectionString属性内のプレースホルダー URI を、MongoDB インストールを指す値に置き換えます。アプリケーションの
web.xmlに、前のステップで定義されたMongoClientFactoryリソースへの参照を追加します。<resource-ref> <res-ref-name> mongodb/MyMongoClient </res-ref-name> <res-type> com.mongodb.MongoClient </res-type> <res-auth> Container </res-auth> </resource-ref>
これにより、 java:comp/envコンテキストで JNDI 名mongodb/MyMongoClientを介してMongoClientインスタンスを検索できるようになります。
Tip
ここにリストされているもの以外の JNDI 実装では、ドライバーの組み込みMongoClientFactory実装に基づいて独自の Factoryラッパーを作成できます。