Overview of JCA configuration elements
The Java Platform, Enteprise Edition Connector Architecture (JCA) feature provides configuration elements to define instances of connection factories, administered objects, and activation specifications, and to associate these instances with an installed resource adapter. Each of the JCA configuration elements consists of two basic parts, a top-level element and a subelement, both of which are required for the configured instance.
- connectionFactory
- adminObject
- activationSpec
- jmsConnectionFactory
- jmsQueueConnectionFactory
- jmsTopicConnectionFactory
- jmsDestination
- jmsQueue
- jmsTopic
- jmsActivationSpec
Subelements are generated from the resource adapter deployment descriptor and annotations when your resource adapter is installed. You will not see any documentation of the available subelements in the static documentation for available server configuration elements.
Use the following rules to generate the names of the server configuration subelements:
<rar_identifier>
is the filename that
is specified in the location attribute of the resourceAdapter configuration
element, without the extension or directory path information. - If a resource adapter provides exactly one interface within one
of the listed categories, such as connectionFactory or adminObject,
the subelement is:
properties.<rar_identifier>
- If the interface name is unique without the package name, the
subelement is:
properties.<rar_identifier>.<InterfaceName>
- If the implementation name is unique without the package name,
the subelement is:
properties.<rar_identifier>.<ImplementationName>
- In other cases, the subelement name is
properties.<rar_identifier>.<fully.qualified.InterfaceName>
orproperties.<rar_identifier>.<fully.qualified.ImplementationName>
The following examples illustrate the case where only one interface within each category is provided by a resource adapter with identifier MyAdapter:
<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>