7.8.2. Résolution de référence EJB


Cette section explique comment JBoss implémente @EJB et @Resource. Veuillez noter qu'XML remplace toujours les annotations, mais que les mêmes règles s'appliquent.

Règles pour les annotations @EJB

  • L'annotation @EJB possède également un attribut mappedName(). La spécification le considère comme une métadonnée spécifique au fournisseur tandis que JBoss reconnait mappedName() en tant que nom JNDI global du EJB que vous référencez. Si vous avez indiqué un mappedName(), alors tous les autres attributs seront ignorés et ce nom JNDI global sera utilisé comme liaison.
  • Si vous indiquez @EJB sans attributs définis :
    @EJB 
    ProcessPayment myEjbref;
    Copy to Clipboard Toggle word wrap
    Alors les règles suivantes vont s'appliquer :
    • Le jar EJB du bean de référencement est analysé pour trouver un EJB avec l'interface utilisée dans l'injection @EJB. S'il existe plus d'un EJB qui publie la même interface commerciale, alors une exception apparaîtra. S'il n'y a qu'un seul bean dans cette interface, alors celui-là sera utilisé.
    • Chercher l'EAR des EJB qui publient cette interface. S'il y a des doubles, alors il y aura une exception. Sinon le bean correspondant sera renvoyé.
    • Chercher globalement dans le runtime de JBoss un EJB de cette interface. Une fois de plus, s'il y a des doubles, il y aura une exception.
  • @EJB.beanName() correspond à <ejb-link>. Si le beanName() est défini, il vous faudra utiliser le même algorithme que @EJB sans attribut défini mis à part beanName() comme une clé de la recherche. Il existe une exception à cette règle si vous utilisez la syntaxe ejb-link '#'. La syntaxe '#' vous permettra de mettre un chemin d'accès relatif dans un jar de l'EJB qui contient l'EJB de référencement. Reportez-vous à la spécification EJB 3.1 pour plus de détails.
Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat