4.2. JBoss EAP での JBoss Data Grid のデプロイ (リモートクライアントサーバーモード)
Red Hat JBoss Data Grid は Red Hat JBoss Enterprise Application Platform 6.x 用のモジュールを提供します。これらのモジュールを使用する場合は、JBoss Data Grid ライブラリーをユーザーのデプロイメントに含める必要がありません。JBoss EAP にすでに含まれている Infinispan モジュールとの競合を防ぐため、JBoss Data Grid モジュールは別のスロット内に置かれ、JBoss Data Grid のバージョン (major.minor) によって識別されます。
注記
JBoss EAP モジュールは JBoss EAP には含まれていません。http://access.redhat.com のカスタマーポータルに移動し、これらのモジュールを Red Hat JBoss Data Grid のダウンロードページからダウンロードします。
JBoss EAP で JBoss Data Grid をデプロイするには、以下の方法の 1 つを用いて JBoss Data Grid モジュールの依存関係をアプリケーションのクラスパス (JBoss EAP デプロイヤー) に追加します。
- 依存関係を
jboss-deployment-structure.xml
ファイルに追加します。 - 依存関係を
MANIFEST.MF
ファイルに追加します。
jboss-deployment-structure.xml ファイルへ依存関係を追加
以下の設定を jboss-deployment-structure.xml
ファイルに追加します。
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2"> <deployment> <dependencies> <module name="org.infinispan.commons" slot="jdg-7.0" services="export"/> <module name="org.infinispan.client.hotrod" slot="jdg-7.0" services="export"/> </dependencies> </deployment> </jboss-deployment-structure>
注記
jboss-deployment-structure.xml
ファイルの詳細は、Red Hat JBoss Enterprise Application Platform のドキュメントを参照してください。
MANIFEST.MF ファイルへ依存関係を追加
次のように依存関係を MANIFEST.MF
ファイルに追加します。
例4.2 MANIFEST.MF ファイルの例
Manifest-Version: 1.0 Dependencies: org.infinispan.commons:jdg-7.0 services, org.infinispan.client.hotrod:jdg-7.0 services
最初の行はこの例と同じになります。必要な依存関係に応じて、以下のいずれかをファイルの 2 行目に追加します。
- 基本の Hot Rod クライアント
org.infinispan.commons:jdg-7.0 services, org.infinispan.client.hotrod:jdg-7.0 services
- リモートクエリー機能を持つ Hot Rod クライアント
org.infinispan.commons:jdg-7.0 services, org.infinispan.client.hotrod:jdg-7.0 services, org.infinispan.query.dsl:jdg-7.0 services, org.jboss.remoting3
4.2.1. Hot Rod クライアントでのカスタムクラスの使用
以下の 2 つの方法のいずれかを使用して Hot Rod クライアントでカスタムクラスを使用できます。
- オプション 1: 以下の例のように、Hot Rod クライアントの設定ビルダーでデプロイメントのクラスローダーを参照します。
例4.3 ConfigurationBuilder インスタンスでのカスタムクラスローダーの参照
import org.infinispan.client.hotrod.configuration.ConfigurationBuilder; [...] ConfigurationBuilder config = new ConfigurationBuilder(); config.marshaller(new GenericJBossMarshaller(Thread.currentThread().getContextClassLoader()));
- オプション 2: カスタムクラスを JBoss EAP 内の独自のモジュールとしてインストールし、新規に作成されたモジュールの依存関係は JBoss Data Grid モジュール (
${EAP_HOME}/modules/system/layers/base/org/infinispan/commons/jdg-6.x/module.xml
) に追加する必要があります。