![[8.5.5.2 ou ultérieure]](../ng_v8552.gif)

Configuration d'adaptateurs de ressources
Vous pouvez configurer des adaptateurs de ressources qui se conforment aux spécifications JCA (Java™ EE Connector Architecture) version 1.6, 1.5 ou 1.0.
Pourquoi et quand exécuter cette tâche
Vous pouvez installer et configurer un adaptateur de ressources et les différentes fabriques de connexions, objets gérés et spécifications d'activation, comme défini dans la spécification JCA.
Procédure
Exemple
Un identificateur unique pour un adaptateur de ressources est nécessaire pour identifier les instances configurées de fabriques de connexions, d'objets gérés et de spécifications d'activation comme étant associées à un adaptateur de ressources installé. Pour les adaptateurs de ressources autonomes, le nom de module est utilisé comme identificateur. Pour ceux imbriqués dans des applications, la combinaison du nom d'application plus le nom du module (séparés par un point) est utilisée comme identificateur.
Pour spécifier des propriétés pour un adaptateur de ressources autonome à l'aide d'un sous-élément properties.MyAdapter incluant l'identificateur de l'adaptateur de ressources, MyAdapter :
<resourceAdapter location="C:/adapters/MyAdapter.rar"> <properties.MyAdapter logFile="${server.output.dir}/logs/myAdapter.log"/> </resourceAdapter>
Pour associer une fabrique de connexions avec un adaptateur de ressources autonome à l'aide d'un sous-élément properties.MyAdapter incluant l'identificateur de l'adaptateur de ressources, MyAdapter :
<resourceAdapter location="C:/adapters/MyAdapter.rar"/> <connectionFactory jndiName="eis/cf"> <properties.MyAdapter serverName="localhost" portNumber="1234"/> </connectionFactory>
Pour associer une fabrique de connexions avec un adaptateur de ressources nommé MyEmbeddedAdapter, activé dans l'application app1 , à l'aide d'un sous-élément properties.app1.MyEmbeddedAdapter:
<application location="C:/applications/app1.ear"/> <connectionFactory jndiName="eis/cf"> <properties.app1.MyEmbeddedAdapter serverName="localhost" portNumber="1234"/> </connectionFactory>
Dans certains cas, le nom du module n'est pas suffisamment unique pour servir d'identificateur. Ceci peut se produire, par exemple, si vous installez deux versions différentes du même adaptateur de ressources. Autre situation, le nom de module peut être unique mais inapproprié pour son utilisation dans la configuration en raison de sa longueur ou de la présence de caractères non alphanumériques. Vous pouvez remplacer l'identificateur de l'adaptateur de ressources en spécifiant l'attribut ID.
L'exemple suivant illustre comment redéfinir l'identificateur des adaptateurs de ressources autonomes :
<resourceAdapter id="MyAdapterV1" location="C:/adapters/version-1.0/MyAdapter.rar"/> <resourceAdapter id="MyAdapterV2" location="C:/adapters/version-2.0/MyAdapter.rar"/> <connectionFactory jndiName="eis/cf1"> <properties.MyAdapterV1 serverName="localhost" portNumber="1234"/> </connectionFactory> <connectionFactory jndiName="eis/cf2"> <properties.MyAdapterV2 serverName="localhost" portNumber="1234"/> </connectionFactory>
L'exemple suivant illustre comment redéfinir l'identificateur d'un adaptateur de ressources intégré dans une application. L'exemple remplace l'identificateur par MyEmbeddedRA :
<application location="C:/applications/app1.ear"> <resourceAdapter id="MyEmbeddedAdapter" alias="MyEmbeddedRA"/> </application> <connectionFactory jndiName="eis/cf"> <properties.app1.MyEmbeddedRA serverName="localhost" portNumber="1234"/> </connectionFactory>
Pour calculer le nom de module pour les adaptateurs de ressources imbriqués, l'entrée <module-name> dans le descripteur de déploiement de l'adaptateur de ressources (ra.xml) est prioritaire comme nom de module. Supposons, par exemple, la définition suivante dans ra.xml:
<connector ...> <module-name>MyRARModule</module-name> </connector>
le nom de module serait défini à "MyRARModule".
Si le nom de module est absent dans de descripteur de déploiement du connecteur, la forme concise de l'URI se référant au module de l'adaptateur de ressources dans le descripteur de déploiement de l'application (application.xml) est utilisée. Supposons, par exemple, la définition de module suivante dans application.xml:
<module> <connector>connectors/MyRARModule.rar</connector> </module>
le nom du module serait calculé comme étant "MyRARModule".
Si plusieurs adaptateurs de ressources sont imbriqués dans une application et définissent la même valeur <module-name>, le premier mentionné dans application.xml utilise ce nom de module. Les noms de modules des autres connecteurs en conflit de nom sont calculés à partir de la forme complète de l'URI avec tous les signes / (barre oblique) convertis en points (.). Par exemple, si deux connecteurs sont imbriqués dans une application et associés tous deux à la définition suivante dans ra.xml:
<connector ...> <module-name>MyRARModule</module-name> </connector>
et aux définitions suivantes dans application.xml :
<module> <connector>subfolder1/connector1.rar</connector> </module> <module> <connector>subfolder2/connector2.rar</connector> </module>
Le nom de module pour le premier connecteur sera alors "MyRARModule" et le nom de module pour le second, "subfolder2.connector2.rar"