Rubriques

IntroductionTo top of page

Ces intructions traitent principalement de l'identification des EJB. Vous trouverez des conseils supplémentaires sur les EJB dans Principes et conseils: les EJB.

Identification des EJB. To top of page

Les EJB servent généralement à implémenter un objet métier côté serveur qui nécessite un support pour les transactions, la sécurité et l'accès à distance, ou qui agit sur les données partagées (comme la mise à jour des informations de compte).

Les EJB sont souvent identifiés lorsque les classes de conception sont identifiées à partir des Classes d'Analyse.. Les classes de contrôle constituent de bons candidats pour les beans de session puisque ces derniers sont préparés pour fournir la logique de contrôle. Les classes entité constituent de bons candidats pour les beans d'entité puisqu'ils sont préparés pour les données rémanentes.

Consultez également les conseils plus précis qui suivent:

Comparaison des beans de session, Entité et orienté messages To top of page

Résumant certains des principes et conseils précédents, ce tableau identifie le rôle que jouent les différents EJB, la nature de leur état et la manière dont on y a accède.

  Session Orienté messages Entité

Rôle

Mise en place du client - logique applicative spécifique

Mise en place du traitement des messages - logique applicative spécifique

Mise en place d'une entité métier - logique applicative spécifique

Méthode d'Accès

Un seul client par des interfaces locales ou distantes

Conteneur par l'interface JMS MessageListener; pas d'accès direct pour les clients.

Plusieurs clients à la fois par des interfaces locales ou distantes

Etat

L'état conversationnel transitoire entre le client et le conteneur peut être maintenu.

Sans état, mais peut maintenir les descripteurs aux ressources en instance

Etat persistant enregistré à la base de données.


Modélisation des EJBTo top of page

Les EJB sont modélisés comme un ensemble de classes stéréotypées. En particulier, la classe Bean et toutes les classes d'interface EJB. Les interfaces EJB sont modélisées comme des classes stéréotypées mais pas les interfaces UML pour les raisons évoquées dans Principes et conseils: les interfaces pour les applications J2EE. .

Les relations entre la classe bean et les interfaces EJB sont modélisées comme des dépendances, de la classe bean jusqu'aux interfaces, et non pas comme des relations "realizes" . Généralement, l'outil d'implémentation Java est représenté comme une réalisation entre une interface et une classe. Cependant, les classes EJB n'implémentent pas leurs classes d'interface; une dépendance est donc plus appropriée. Le diagramme suivant présente un exemple. Pour en savoir plus sur cet exemple précis, consultezPrincipes et conseils: Conception des sous-systèmes pour les applications J2EE.s.

Diagramme décrit dans le texte d'accompagnement.

Exemple de classes EJB et de classes utilitaires.

Des stéréotypes UML applicables à la modélisation des EJB sont présentés ci-dessous.

Stéréotype S'applique à Définition

<<Interface d'accueil d'un EJB de session >>
<<Interface d'accueil d'un EJB Entité >>

Classe Indique respectivement une interface d'accueil d'un bean de session ou entité.
<<Interface EJB distante>> Classe Indique une interface EJB distante.
<<Interface EJB locale>> Classe Indique une interface EJB locale.
     
<< EJB de session>> Classe Indique une classe EJB de session.
<<EJB Entité>> Classe Indique une classe EJB Entité.
<<EJB orienté messages>> Classe Indique que la classe est un bean orienté messages.

Un EJB est généralement groupé dans un sous-système avec les classes et les EJB très proches. Cela permet au concepteur de donner une vue desspécifications des EJB indépendants de leur implémentation et de les regrouper avec d'autres éléments graphiques pour fournir un niveau d'abstraction plus élevé. Pour plus de détails, voir Principes et conseils: Conception de sous-systèmes pour les application J2EE.

Voir également la spécification de mappage UML/EJB(RSC01) pour une liste complète des stéréotypes pour représenter les outils EJB.

Modélisation des beans orientés messages.To top of page

Modélisez les dépendances aux sujets et aux files d'attente auxquels s'abonnent les beans orientés messages. Pour plus de détails sur la modélisation des éléments concurrents dans une application J2EE, voir Principes et conseils: Description de l'architecture Run-Time pour les applications J2EE.

Modélisation des caractéristiques des EJBTo top of page

L'utilisation des mécanismes, tels que la persistance gérée par conteneur, les transactions, l'autorisation, etc., peut être modélisée comme des caractéristiques supplémentaires de la classe bean, ou simplement inclue dans une description textuelle associée à la classe bean.

Utilisez les diagrammes de séquence pour étudier des scénarios employant ces mécanismes.

Modélisation des Intéractions Objets To top of page

Les diagrammes d'interactions (diagrammes de collaboration et de séquence) peuvent servir à montrer le comportement dynamique des EJB et l'interaction des non-EJB (y compris les composants Web et les applications client externes) avec les EJB.

Ces diagrammes d'interactions sont pour l'essentiel identiques à ceux que nous avons décrits dans Activité: Conception d'un cas d'utilisation. Les interactions peuvent apparaître avec le bean comme une boîte noire, en interagissant seulement avec les interfaces EJB. Les interactions pourraient également afficher l'implémentation du bean en montrant les interactions entre les interfaces EJB et la classe d'implémentation du bean. Remarque: l'interaction qui suit avec le conteneur n'est généralement pas affichée.

Les beans orientés messages consomment les messages qui arrivent de manière asynchrone d'autres sources. Vous pourriez choisir d'afficher un message asynchrone allant directement du producteur au consommateur, ou de modéliser plus précisément la relation en modélisant les sujets et les files d'attente.

La figure 2 présente un exemple de diagramme de séquence qui montre une interaction entre une classe client et des interfaces EJB.

Diagramme décrit dans le texte d'accompagnement.

Figure 2: Interaction d'une classe client avec des interfaces EJB.

LA figure 3 présente un diagramme de séquence similaire à celui de la figure 2, mais montre les interactions avec l'implémentation du bean.

Diagramme décrit dans le texte d'accompagnement.

Figure 3: Exemple d'une interaction avec une implémentation EJB.

Modélisation des alternativesTo top of page

L'EJB, en tant que regroupement d'une classe d'implémentation du bean et des interfaces EJB , peut également être modélisé comme un sous-système ou un composant.

Certains concepteurs peuvent choisir de modéliser un EJB comme une classe, et stéréotyper les opérations pour indiquer si elles appartiennent aux interfaces "locales", "distantes", ou "d'accueil". La notation est ainsi plus concise que les autres alternatives.



RUP (Rational Unified Process)   2003.06.15