5.7. HTTP 上の Jakarta Enterprise Beans 呼び出し
HTTP 上の Jakarta Enterprise Beans 呼び出しには、クライアント側実装とサーバー側実装の 2 つの異なる部分が含まれます。
5.7.1. クライアント側実装
クライアント側の実装は、Undertow HTTP クライアントを使用してサーバーを呼び出す EJBReceiver
で設定されます。接続管理は、接続プールを使用して自動的に処理されます。
HTTP トランスポートを使用するようにリモート Jakarta Enterprise Beans クライアントアプリケーションを設定するには、以下の依存関係を HTTP トランスポート実装に追加する必要があります。
<dependency> <groupId>org.wildfly.wildfly-http-client</groupId> <artifactId>wildfly-http-ejb-client</artifactId> </dependency>
HTTP 呼び出しを実行するには、http
URL スキームを使用し、HTTP インボーカーのコンテキスト名である wildfly-services
を含める必要があります。たとえば、remote+http://localhost:8080
をターゲット URL として使用している場合、HTTP トランスポートを使用するにはこれを http://localhost:8080/wildfly-services
に更新する必要があります。
5.7.2. サーバー側実装
サーバー側実装は、受信 HTTP リクエストを処理し、それらをアンマーシャルし、結果を内部 Jakarta Enterprise Beans 呼び出しコードに渡すサービスで設定されます。
サーバーを設定するには、undertow
サブシステムで使用したい各仮想ホストで http-invoker
を有効にする必要があります。これは、標準の設定ではデフォルトで有効になっています。無効になっている場合は、以下の管理 CLI コマンドを使用して再度有効にできます。
/subsystem=undertow/server=default-server/host=default-host/setting=http-invoker:add(http-authentication-factory=myfactory, path="wildfly-services")
http-invoker
には wildfly-services
がデフォルトの path
と、以下のいずれかの属性があります。
-
上記のコマンドが示すように、Elytron
http-authentication-factory
への参照である必要があるhttp-authentication-factory
。 -
レガシー
security-realm
.
上記の属性は相互排他的であることに注意してください。http-authentication-factory
と security-realm
の両方を同時に指定することはできません。
http-authentication-factory
の使用を希望するすべてのデプロイメントは、Elytron セキュリティーと、指定の HTTP 認証ファクトリーに対応する同じセキュリティードメインを使用する必要があります。