![[8.5.5.2 以降]](../ng_v8552.gif)

JCA 構成エレメントの概要
Java Platform, Enteprise Edition Connector Architecture (JCA) フィーチャーは、接続ファクトリー、管理対象オブジェクト、およびアクティベーション・スペックのインスタンスを定義し、それらのインスタンスを、インストールされているリソース・アダプターに関連付けるための構成エレメントを提供します。各 JCA 構成エレメントは、最上位エレメントとサブエレメントという 2 つの基本パーツで構成されています。これらは両方とも、構成されたインスタンスに必要です。
最上位エレメントは、JNDI 名、接続管理、およびコンテナー認証などの、Liberty プロファイル・サーバーによって提供されている一般的な機能を構成します。サブエレメントは、インストールされているリソース・アダプターにインスタンスを結び付け、ベンダー定義の構成プロパティーを指定できるようにします。
一般的な JCA の定義済み最上位構成エレメントは次のとおりです。
- connectionFactory
- adminObject
- activationSpec
JMS フィーチャーが使用可能になっている場合、以下のような JMS 用の一般的な定義済み構成エレメントもあります。
- jmsConnectionFactory
- jmsQueueConnectionFactory
- jmsTopicConnectionFactory
- jmsDestination
- jmsQueue
- jmsTopic
- jmsActivationSpec
サブエレメントは、リソース・アダプターのインストール時に、リソース・アダプターのデプロイメント記述子およびアノテーションから生成されます。使用可能なサーバー構成エレメントの静的文書には、使用可能なサブエレメントの文書はありません。
サーバー構成サブエレメントの名前を生成するには、以下のルールを使用します。
- リソース・アダプターが、リストされているいずれかのカテゴリー (connectionFactory または adminObject など) 内で厳密に 1 つのインターフェースを提供する場合、サブエレメントは properties.<rar_identifier> になります。
- パッケージ名を除いてインターフェース名が固有の場合、サブエレメントは properties.<rar_identifier>.<InterfaceName> になります。
- パッケージ名を除いて実装名が固有の場合、サブエレメントは properties.<rar_identifier>.<ImplementationName> になります。
- 他のケースでは、サブエレメント名は properties.<rar_identifier>.<fully.qualified.InterfaceName> または properties.<rar_identifier>.<fully.qualified.ImplementationName> になります。
以下の例は、各カテゴリー内で 1 つのインターフェースのみが、MyAdapter という ID のリソース・アダプターによって提供される場合を示しています。
<connectionFactory jndiName="eis/cf1" containerAuthDataRef="auth1">
<properties.MyAdapter portNumber="1234" someVendorProperty="100"/>
</connectionFactory>
<connectionFactory jndiName="eis/cf2" containerAuthDataRef="auth2">
<properties.MyAdapter portNumber="1234" someVendorProperty="200"/>
</connectionFactory>
<jmsConnectionFactory jndiName="jms/cf">
<properties.MyAdapter serverName="localhost" anotherProperty="40"/>
</jmsConnectionFactory>
<jmsQueueConnectionFactory jndiName="jms/qcf">
<properties.MyAdapter serverName="localhost" vendorProp1="1"/>
</jmsQueueConnectionFactory>
<jmsTopicConnectionFactory jndiName="jms/tcf">
<properties.MyAdapter serverName="localhost" prop1="A" prop2="B"/>
</jmsTopicConnectionFactory>
<adminObject jndiName="eis/interactionSpec">
<properties.MyAdapter functionName="find" executionTimeout="5000"/>
</adminObject>
<jmsDestination jndiName="jms/destination1">
<properties.MyAdapter name="DEST1"/>
</jmsDestination>
<jmsQueue jndiName="jms/queue1">
<properties.MyAdapter queueName="QUEUE1"/>
</jmsQueue>
<jmsTopic id="topic1" jndiName="jms/topic1">
<properties.MyAdapter topicName="TOPIC1"/>
</jmsTopic>
<activationSpec id="app1/module1/MyMessageDrivenBean">
<properties.MyAdapter prop1="a" prop2="b" prop3="c"/>
</activationSpec>
<jmsActivationSpec id="app1/module1/MyJMSMessageDrivenBean">
<properties.MyAdapter destinationRef="topic1"/>
</jmsActivationSpec>