16.3. jca サブシステムの設定
jca
サブシステムは、Jakarta Connectors およびリソースアダプターデプロイメントの一般的な設定を制御します。管理コンソールまたは管理 CLI を使用して jca
サブシステムを設定できます。
設定する主な jca
サブシステム要素は次のとおりです。
- 管理コンソールでの
jca
の設定 管理コンソールで
jca
サブシステムを設定するには、Configuration → Subsystems → JCA と選択し、表示 をクリックします。次に、該当するタブを選択します。- Configuration: キャッシュ接続マネージャー、アーカイブバリデーション、および Bean バリデーションの設定が含まれます。これらの項目は独自のタブに含まれます。設定を変更するには、タブを開き、Edit リンクをクリックします。
- Bootstrap Context: 設定されたブートストラップコンテキストのリストが含まれます。新しいブートストラップコンテキストオブジェクトを追加、削除、および設定できます。各ブートストラップコンテキストをワークマネージャーに割り当てる必要があります。
Workmanager: 設定されたワークマネージャーのリストが含まれます。新しいワークマネージャーを追加および削除でき、スレッドプールをここで設定できます。各ワークマネージャーは短時間実行されるスレッドプールを 1 つ持つことができ、任意で長時間実行されるスレッドプールを 1 つ持つことができます。
スレッドプール属性を設定するには、選択したワークマネージャーの Thread Pools をクリックします。
- 管理 CLI での
jca
システムの設定 -
/subsystem=jca
アドレスから管理 CLI でjca
サブシステムを設定できます。管理対象ドメインでは、コマンドの前に/profile=PROFILE_NAME
を追加する必要があります。
以下のセクションの表には、管理モデルで使用される属性名を示しています (管理 CLI を使用している場合など)。XML で使用される名前は管理モデルの名前と異なる場合があるため、XML で使用される要素を EAP_HOME/docs/schema/wildfly-jca_5_0.xsd
のスキーマ定義ファイルで確認してください。
アーカイブバリデーション
デプロイメントユニットでアーカイブバリデーションを実行するかどうかを決定します。以下の表はアーカイブバリデーションに設定できる属性を表しています。
表16.1 アーカイブバリデーション属性
属性 | デフォルト値 | 説明 |
---|---|---|
enabled | true | アーカイブバリデーションが有効であるかどうかを指定します。 |
fail-on-error | true | アーカイブバリデーションのエラーレポートによってデプロイメントが失敗するかどうかを指定します |
fail-on-warn | false | アーカイブバリデーションの警告レポートによってデプロイメントが失敗するかどうかを指定します。 |
アーカイブバリデーションが有効な状態で、アーカイブが Jakarta Connectors 仕様を正しく実装しない場合、デプロイメント中に問題を説明するエラーメッセージが表示されます。以下に例を示します。
Severity: ERROR Section: 19.4.2 Description: A ResourceAdapter must implement a "public int hashCode()" method. Code: com.mycompany.myproject.ResourceAdapterImpl Severity: ERROR Section: 19.4.2 Description: A ResourceAdapter must implement a "public boolean equals(Object)" method. Code: com.mycompany.myproject.ResourceAdapterImpl
アーカイブバリデーションが指定されていない場合は、アーカイブバリデーションが指定されているとみなされ、enabled
属性のデフォルトが true
に設定されます。
Bean Validation
この設定は Bean の検証が実行されるかどうかを決定します。この仕様の詳細は、Jakarta Bean Validation 仕様 を参照してください。以下の表は Bean バリデーションに設定できる属性について表しています。
表16.2 Bean バリデーションの属性
属性 | デフォルト値 | 説明 |
---|---|---|
enabled | true | Bean バリデーションが有効であるかどうかを指定します。 |
Bean バリデーションが指定されていない場合は、Bean バリデーションが指定されているとみなされ、enabled
属性のデフォルトが true
に設定されます。
ワークマネージャー
ワークマネージャーには次の 2 種類があります。
- デフォルトワークマネージャー
- デフォルトのワークマネージャーおよびそのスレッドプール。
- カスタムワークマネージャー
- カスタムワークマネージャーの定義およびそのスレッドプール。
ワークマネージャーに設定できる属性は下表のとおりです。
表16.3 ワークマネージャーの属性
属性 | 説明 |
---|---|
name | ワークマネージャーの名前を指定します。 |
elytron-enabled |
この属性は、 |
ワークマネージャーには以下の子要素もあります。
表16.4 ワークマネージャーの子要素
子要素 | 説明 |
---|---|
short-running-threads | 標準の Work インスタンスのスレッドプール。ワークマネージャーごとに短時間実行されるスレッドプールが 1 つあります。 |
long-running-threads |
|
ワークマネージャーのスレッドプールに設定できる属性は下表のとおりです。
表16.5 スレッドプールの属性
属性 | 説明 |
---|---|
allow-core-timeout |
コアスレッドがタイムアウトするかどうかを決定するブール値の設定。デフォルト値は |
core-threads | コアスレッドプールのサイズ。スレッドプールの最大サイズ以下である必要があります。 |
handoff-executor | タスクが受け入れられない場合、タスクを委譲するエグゼキューター。指定されていない場合、受け入れられないタスクは警告なしに破棄されます。 |
keepalive-time | ワーク実行後にスレッドプールが保持される期間を指定します。 |
max-threads | スレッドプールの最大サイズ。 |
name | スレッドプールの名前を指定します。 |
queue-length | キューの最大長。 |
thread-factory | スレッドファクトリーへの参照。 |
分散ワークマネージャー
分散ワークマネージャーは、別のワークマネージャーインスタンスでワークの実行スケジュールを変更できるワークマネージャーです。
以下の管理 CLI コマンドの例は、分散ワークマネージャーを設定します。スタンドアロンサーバーの standalone-ha.xml
または standalone-full-ha.xml
設定ファイルなど、高可用性を提供する設定を使用する必要があることに注意してください。
例: 分散ワークマネージャーの設定
batch /subsystem=jca/distributed-workmanager=myDistWorkMgr:add(name=myDistWorkMgr) /subsystem=jca/distributed-workmanager=myDistWorkMgr/short-running-threads=myDistWorkMgr:add(queue-length=10,max-threads=10) /subsystem=jca/bootstrap-context=myCustomContext:add(name=myCustomContext,workmanager=myDistWorkMgr) run-batch
short-running-threads
要素の名前は distributed-workmanager
要素の名前と同じである必要があります。
以下の表は、分散ワークマネージャーに設定できる属性を表しています。
表16.6 分散ワークマネージャーの属性
属性 | 説明 |
---|---|
elytron-enabled | ワークマネージャーの Elytron セキュリティーを有効にします。 |
name | 分散ワークマネージャーの名前。 |
policy | ワークインスタンスをいつ再分散するかを決定します。使用できる値は次のとおりです。
|
policy-options |
ポリシーのキーバリューペアのオプションリスト。 /subsystem=jca/distributed-workmanager=myDistWorkMgr:write-attribute(name=policy-options,value={watermark=3}) |
selector | ワークインスタンスを再分散するネットワークのノードを決定します。使用できる値は次のとおりです。
|
selector-options | セレクターのキーバリューペアのオプションリスト。 |
分散ワークマネージャーには以下の子要素もあります。
表16.7 分散ワークマネージャーの子要素
子要素 | 説明 |
---|---|
long-running-threads |
|
short-running-threads | 標準ワークインスタンスのスレッドプール。各分散ワークマネージャーには短期間実行スレッドプールがある必要があります。 |
ブートストラップコンテキスト
カスタムのブートストラップコンテキストを定義するために使用されます。以下の表は、ブートストラップコンテキストに設定できる属性を表しています。
表16.8 ブートストラップコンテキストの属性
属性 | 説明 |
---|---|
name | ブートストラップコンテキストの名前を指定します。 |
workmanager | このコンテキストに使用するワークマネージャーの名前を指定します。 |
キャッシュ接続マネージャー
トランザクションの接続における接続のデバッグおよび Lazy Enlistment のサポートに使用され、アプリケーションによって使用およびリリースされるかどうかを追跡します。以下の表はキャッシュ接続マネージャーに設定できる属性を表しています。
表16.9 キャッシュ接続マネージャーの属性
属性 | デフォルト値 | 説明 |
---|---|---|
debug | false | 接続を明示的に閉じるため、障害時に警告を出力します。 |
error | false | 接続を明示的に閉じるため、障害時に例外が発生します。 |
ignore-unknown-connections | false | 未知の接続はキャッシュされないことを指定します。 |
install | false | キャッシュされた接続マネージャーバルブおよびインターセプターを有効または無効にします。 |