5.4. Jakarta Enterprise Beans クライアントのリモーティング相互運用性
リモート Jakarta Enterprise Beans クライアントアプリケーションは、サーバーに接続するために remoting
サブシステムに定義されたコネクターを使用します。ニーズに合わせて、次のコネクターのいずれかを使用できます。
-
http-connector
: デフォルトポート 8080 でundertow
の HTTP アップグレード機能を介してサーバーへのクライアント接続をサポートします。このコネクターが設定されると、クライアントは、暗号化されていない接続にremote+http
URI スキームを使用し、暗号化された接続にremote+https
URI スキームを使用します。 -
コネクター
: レガシーリモート
URI スキームを使用したサーバーへのクライアント接続をサポートします。このコネクターは、古い Jakarta Enterprise Beans クライアントアプリケーションでの使用に適しています。
Jakarta Enterprise Beans クライアントは、これまでのリモーティングベースのコネクターを使用する他に、http
URI スキームを使用して undertow
および HTTP プロトコルを介してサーバーに接続できます。詳細は、Jakarta Enterprise Beans Invocation Over HTTP を参照してください。
デフォルトの HTTP コネクター
デフォルトのコネクターは http-connector
で、クライアントは URI スキーム remote+http
または remote+https
を使用する必要があります。デフォルトのリモート接続ポートは 8080
で、undertow
のデフォルトポートです。以下の例は、jboss-ejb-client
プロパティーファイルを示しています。
remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false remote.connections=default remote.connection.default.host=localhost remote.connection.default.port=8080 remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
異なる JBoss EAP バージョンのクライアントのサポート
クライアントアプリケーションが JBoss EAP 6 の Jakarta Enterprise Beans クライアントライブラリーを使用し、JBoss EAP 7 サーバーへの接続が必要な場合は、8080
以外のポートでリモーティングコネクターを公開するようにサーバーを設定する必要があります。その後、そのクライアントは新しく設定されたコネクターを使用して接続する必要があります。
JBoss EAP 7 の Jakarta Enterprise Beans クライアントライブラリーを使用し、JBoss EAP 6 サーバーへの接続を必要とするクライアントアプリケーションは、サーバーインスタンスによって remoting http-remoting
コネクターは使用されず、remoting コネクターコネクターが使用されることを認識する必要があります。これは、以下の新しいクライアント側の接続プロパティーを定義することで実現されます。
remote.connection.default.protocol=remote
Jakarta Enterprise Beans クライアントアプリケーションの複数のコネクターのサポート
JBoss EAP 7.4 より前は、Jakarta Enterprise Beans クライアントアプリケーションは remoting
サブシステムに定義された 1 つのリモーティングコネクターのみの使用に制限され、サーバーに接続することがありました。このコネクターは、ejb3
サブシステムの リモート
要素の connector-ref
属性に指定されています。デフォルトの http-connector
を使用して、undertow
の HTTP アップグレード機能を介して remote+http
プロトコルで接続を提供するか、レガシー リモート
プロトコル経由で接続を提供するレガシー コネクター
を使用できます。
JBoss EAP 7.4 では、Jakarta Enterprise Beans クライアントが接続目的で使用できるコネクターのリストを指定できます。このリストを指定するには、remote
要素の新しい connectors
属性を使用します。connectors
属性は、remoting
サブシステムに定義されたコネクターのリストを受け入れます。これにより、1 台のサーバーが Jakarta Enterprise Beans クライアントアプリケーションに複数の接続を提供できます。たとえば、EAP 7.2 以降と互換性のあるクライアントは、http-connector
および EAP 7.2 の以前のバージョンと互換性のあるレガシークライアントで remote+http
プロトコルを使用してサーバーに接続できます。コネクター
でレガシー リモート
プロトコルを使用して接続できます。
例:
legacy-remoting-connector
は remoting サブシステムに定義された コネクター
であるとみなします。以下の例は、write
属性を使用して remoting コネクターの値を更新する ejb3
サブシステム設定を示しています。
/subsystem=ejb3/service=remote:write-attribute(name=connectors, value=[http-remoting-connector, legacy-remoting-connector])
domain.xml
ファイルまたは standalone.xml
ファイルを表示して、ejb3
サブシステムで設定済みのリモーティングコネクターを確認できます。
<remote cluster="ejb" connectors="http-remoting-connector legacy-remoting-connector" thread-pool-name="default"> <channel-creation-options> <option name="MAX_OUTBOUND_MESSAGES" value="1234" type="remoting"/> </channel-creation-options> </remote>
Jakarta Enterprise Beans リモート呼び出しは、JBoss EAP 6 でのみ JBoss EAP 7 でサポートされます。
Jakarta Enterprise Beans クライアントのリモーティング相互運用性のほかにも、以下のオプションを使用してレガシークライアントに接続できます。
- JBoss EAP 設定ガイドの JTS トランザクションの ORB の設定 します。