Übersicht über JCA-Konfigurationselemente

Das JCA-Feature (Java Platform, Enteprise Edition Connector Architecture) stellt Konfigurationselemente für die Definition von Instanzen von Verbindungsfactorys, verwalteten Objekten und Aktivierungsspezifikationen und für die Zuordnung dieser Instanzen zu einem installierten Ressourcenadapter bereit. Jedes der JCA-Konfigurationselemente besteht aus zwei Basiskomponenten, einem Element der höchsten Ebene und einem Unterelement. Beide sind für die konfigurierte Instanz erforderlich.

Ein Element der höchsten Ebene konfiguriert allgemeine Funktionen, die vom Liberty -Server bereitgestellt werden, z. B. JNDI-Name, Verbindungsmanagement und Containerauthentifizierung. Ein Unterelement bindet die Instanz an einen installierten Ressourcenadapter und ermöglicht es Ihnen, vom Anbieter definierte Konfigurationseigenschaften anzugeben.
Generische vordefinierte JCA-Konfigurationselemente der höchsten Ebene:
  • connectionFactory
  • adminObject
  • activationSpec
Wenn das JMS-Feature aktiviert ist, gibt es auch vordefinierte generische Konfigurationselemente für JMS:
  • jmsConnectionFactory
  • jmsQueueConnectionFactory
  • jmsTopicConnectionFactory
  • jmsDestination
  • jmsQueue
  • jmsTopic
  • jmsActivationSpec

Unterelemente werden über den Implementierungsdeskriptor des Ressourcenadapters und der Annotationen generiert, wenn Ihr Ressourcenadapter installiert wird. In der statischen Dokumentation für verfügbare Serverkonfigurationselemente ist keine Dokumentation der verfügbaren Elemente enthalten.

Verwenden Sie die folgenden Regeln, um die Namen der Unterelemente der Serverkonfiguration zu generieren:

Hinweis: In den folgenden Beispielen ist <rar_identifier> der Dateiname, der im Attribut 'location' des Konfigurationselements resourceAdapter ohne Erweiterungs-oder Verzeichnispfadinformationen angegeben ist.
  • Wenn ein Ressourcenadapter genau eine Schnittstelle innerhalb einer der aufgeführten Kategorien bereitstellt, z. B. connectionFactory oder adminObject,, lautet das Unterelement: properties.<rar_identifier>
  • Wenn der Schnittstellenname ohne den Paketnamen eindeutig ist, lautet das Unterelement: properties.<rar_identifier>.<InterfaceName>
  • Wenn der Implementierungsname ohne den Paketnamen eindeutig ist, lautet das Unterelement wie folgt: properties.<rar_identifier>.<ImplementationName>
  • In anderen Fällen lautet der Name des Unterelements properties.<rar_identifier>.<fully.qualified.InterfaceName> oder properties.<rar_identifier>.<fully.qualified.ImplementationName> .

Die folgenden Beispiele veranschaulichen den Fall, in dem nur eine Schnittstelle innerhalb jeder Kategorie von einem Ressourcenadapter mit der ID "MyAdapter" bereitgestellt wird:

<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>