En ce moment, je travaille sur une application qui doit utiliser une fabrique de connexions. Lorsque je recherche la fabrique de connexions directement au niveau global par le nom défini dans WAS, tout fonctionne correctement, mais pour les moyens de découplage, je souhaite définir une référence de ressource dans mon application et rechercher ce nom. Donc, j'ai créé l'entrée suivante dans mon application.xml:Impossible de rechercher la ressource au niveau du composant dans Websphere
<resource-ref>
<res-ref-name>jms/connectionFactory</res-ref-name>
<res-type>javax.jms.ConnectionFactory</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
Ce que je fais alors dans mon EJB est de faire recherche suivante:
ConnectionFactory connectionFactory =
(ConnectionFactory) ic.lookup("java:comp/env/jms/connectionFactory");
Cela conduit à cette exception:
javax.naming.NameNotFoundException: Name comp/env/jms not found in context "java:".
Je l'ai également essayé avec:
ConnectionFactory connectionFactory =
(ConnectionFactory) ic.lookup("java:app/jms/connectionFactory");
menant à:
javax.naming.NameNotFoundException: Context: BPMDev/applications/com.ibm.ws.AppNameSpaces/MAN_POT/root,
name: jms/connectionFactory: First component in name jms/connectionFactory not found.
Est-ce que quelqu'un sait ce que je fais mal ici? Merci d'avance!