Visión general de elementos de configuración de JCA
La característica JCA (Java Platform, Enteprise Edition Connector Architecture) proporciona elementos de configuración para definir instancias de fábricas de conexiones, objetos administrados y especificaciones de activación, y para asociar esas instancias a un adaptador de recursos instalado. Cada elemento de configuración de JCA consta de dos partes básicas, un elemento de nivel superior y un subelemento, ambos son necesarios para la instancia configurada.
- connectionFactory
- adminObject
- activationSpec
- jmsConnectionFactory
- jmsQueueConnectionFactory
- jmsTopicConnectionFactory
- jmsDestination
- jmsQueue
- jmsTopic
- jmsActivationSpec
Los subelementos se generan a partir del descriptor de despliegue de adaptadores de recursos y anotaciones cuando se instala el adaptador de recursos. No verá ninguna documentación de los subelementos disponibles en la documentación estática para elementos de configuración de servidor disponibles.
Utilice las reglas siguientes para generar los nombres de los subelementos de configuración del servidor:
- Si un adaptador de recursos proporciona exactamente una interfaz en una de las categorías listadas como, por ejemplo, connectionFactory o adminObject, el subelemento es: properties.<identificador_rar>
- Si el nombre de la interfaz es único sin el nombre de paquete, el subelemento es: properties.<identificador_rar>.<nombre_interfaz>
- Si el nombre de la implementación es único sin el nombre de paquete, el subelemento es: properties.<identificador_rar>.<nombre_implementación>
- En otros casos, el nombre del subelemento es properties.<identificador_rar>.<nombre_instancia_completo> o properties.<identificador_rar>.<nombre_implementación_completo>
En los ejemplos siguientes se ilustra el caso en que un adaptador de recursos con el identificador MyAdapter proporciona una única interfaz en cada categoría:
<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>