Exercice 1.3 : Ajout de beans entity aux diagrammes de classes

Avant de commencer, vous devez d'abord terminer l'exercice 1.2 : Préparation de l'espace de travail.

L'exercice 1.3 vous aide à créer des beans entity à partir d'un diagramme de classes UML. Dans cet exercice, vous procéderez aux tâches suivantes :

Description des beans

Dans ce scénario, vous allez créer deux beans entity : Author et Book. Le bean Author représente une table de base de données, également nommée AUTHOR. Le bean contient des champs représentant l'auteur : ID, nom, âge et sexe. Ces champs correspondent directement à des colonnes de la table AUTHOR.

Le bean Book représente un ouvrage. Ses champs incluent un ID et un titre. Les données correspondant au bean Book sont stockées dans la table BOOK.

Création d'un bean Author

Pour créer le bean Author, suivez les étapes suivantes :

  1. Recherchez le tiroir EJB de la palette dans la partie droite du diagramme de classes UML.
  2. Cliquez sur le tiroir EJB pour l'ouvrir. Bean entity CMP 2.x apparaît au milieu de la liste.
  3. Cliquez sur la flèche (Icône de menu déroulant) à droite de Bean entity CMP 2.x pour afficher davantage de choix. L'autre choix affiché est Bean entity CMP 1.x.
  4. Sélectionnez Bean entity CMP 2.x.
  5. Déplacez le pointeur de la souris à l'intérieur du diagramme de classes, puis cliquez sur l'emplacement choisi pour le bean. Vous créez ainsi un nouveau bean entity CMP 2.x que vous pouvez visualiser dans le diagramme de classes.

Les beans EJB étant complexes, cette action lance l'assistant de création d'un bean enterprise, qui vous permet de définir le bean.

Page de création du bean enterprise

Sur la première page de l'assistant, suivez les étapes suivantes :

  1. Assurez-vous que le projet EJB est UML EJB tutorial.
  2. Entrez le nom de bean, Author
  3. Assurez-vous que le dossier source est ejbModule.
  4. Remplacez le nom du package par défaut par sample
  5. Vérifiez que la version CMP est 2.x.
  6. Cliquez sur Suivant.

Page des propriétés de base de l'assistant de création de beans EJB

Page des détails du bean enterprise

Sur la seconde page de l'assistant, suivez les étapes suivantes :

  1. Laissez le champ Supertype du bean vide.
  2. Vérifiez que la classe du bean est sample.AuthorBean.
  3. Laissez la case Vue du client éloigné décochée.
  4. Sélectionnez la case à cocher Vue du client local.
  5. Vérifiez que le nom de l'interface home locale est sample.AuthorLocalHome.
  6. Vérifiez que le nom de l'interface locale est sample.AuthorLocal.
  7. Vérifiez que la classe de clé est java.lang.Integer.
  8. Sélectionnez la case à cocher Utiliser le type d'attribut de clé unique pour la classe de clé.
  9. Vérifiez que la clé id figure dans la liste des attributs CMP.
  10. Ajoutez deux attributs CMP :
    1. Cliquez sur Ajouter.
    2. Créez l'attribut nom avec le type java.lang.String. Laissez les cases à cocher Tableau et Zone de clé décochées et la case à cocher Promouvoir les méthodes getter et setter dans l'interface locale sélectionnée. Lorsque les méthodes getter et setter sont promues dans l'interface locale, elles sont proposées aux applications client.
    3. Cliquez sur Valider.
    4. Créez un attribut nommé âge avec le type java.lang.Integer. Laissez les cases à cocher Tableau et Zone de clé décochées et la case à cocher Promouvoir les méthodes getter et setter dans l'interface locale sélectionnée.
    5. Cliquez sur Valider, puis sur Fermer.
    6. Cliquez sur Fin.

La page des détails du bean enterprise de l'assistant de création de beans EJB

Votre premier bean entity est créé et visualisé dans le diagramme de classes. Les fichiers suivants s'affichent dans la vue Explorateur de projets :

Ouvrez le descripteur de déploiement de beans EJB. Vous constatez que sur la page Généralités, sous le titre Enterprise JavaBeans, le bean Author est répertorié. Cliquez sur l'entrée du bean Author. La page Bean de l'éditeur de descripteur de déploiement s'ouvre : elle affiche les trois champs CMP et les quatre fichiers de classe et d'interface, y compris la classe utilisée par la clé principale, java.lang.Integer.

Sur la page Bean, sous le titre Liaisons WebSphere, le nom JNDI ejb/sample/AuthorLocalHome apparaît. Ce nom est utilisé lorsqu'une application client recherche le bean.

Dans la vue Explorateur de projets, sous le projet EJB, le répertoire ejbModule > META-INF contient le nouveau fichier ibm-ejb-jar-bnd.xmi. Ce fichier fournit des informations de liaison spécifiques à IBM. Ces informations sont accessibles via l'éditeur de descripteur de déploiement mais, les valeurs sont stockées dans un fichier distinct ; vous pouvez ainsi supprimer aisément les extensions IBM si vous souhaitez déployer votre application sur le serveur EJB d'un autre fournisseur. Plus tard dans le processus de développement EJB, le fichier ibm-ejb-jar-ext.xmi apparaît. Il contient les informations d'extension spécifiques à IBM.

Toujours dans la vue Explorateur de projets, développez le répertoire du descripteur de déploiement sous le projet EJB, développez Entity Beans > Author et explorez les liens vers les divers composants comprenant le bean Author.

Création du bean Book

Ensuite, vous créez le bean Book. Pour ce faire, suivez les étapes suivantes :

  1. Ajoutez un autre bean entity CMP 2.x au diagramme de classes.
  2. Suivez les mêmes étapes que pour le bean Author, avec les différences suivantes :
  3. Cliquez sur Fin.

Votre second bean entity est créé et visualisé dans le diagramme de classes ; les fichiers suivants s'affichent dans la vue Explorateur de projets :

Book apparaît dorénavant dans la liste des Enterprise JavaBeans de la page Généralités du descripteur de déploiement de beans EJB. Les détails du bean Book sont similaires à ceux du bean Author. Dans la vue Explorateur de projets, développez le répertoire du descripteur de déploiement sous le projet EJB. Développez Entity Beans > Book et explorez les liens vers les composants du bean.

Définition des relations entre les beans

Maintenant, vous allez définir une relation CMP entre les deux beans CMP du diagramme de classes. Un bean Author peut être associé à un ou plusieurs beans Book ou à aucun. De même, un bean Book peut être associé à un ou plusieurs beans Book. Cette relation est exprimée sous forme de relation multiple bidirectionnelle au moyen de la notation 0..*:0..*.

  1. Cliquez deux fois sur la barre de titre du diagramme de classes UML pour agrandir la fenêtre.
  2. Dans la vue de la palette, développez le tiroir relation CMP en cliquant sur la flèche (Icône de menu déroulant).
  3. Sélectionnez 0..*:0..* Relation CMP.
  4. Déplacez le pointeur de la souris jusqu'au bean Author. Une icône en forme de flèche (icône en forme de flèche) apparaît si la relation est valide pour le bean. Si la relation n'est pas valide, l'icône en forme de flèche est accompagnée du symbole non valide (icône en forme de flèche non valide).
  5. Cliquez sur le bean Author.
  6. Faites glisser le curseur jusqu'au bean Book, puis relâchez-le. Si ce bean cible n'est pas valide pour la relation, l'icône non valide (icône en forme de flèche non valide) apparaît.
  7. La relation CMP est visualisée sous forme d'association sur le diagramme, après la génération du code sous-jacent approprié. Dans le descripteur de déploiement, ces relations apparaissent sous le titre Relations de la page Bean.
  8. Sélectionnez Ctrl + S pour sauvegarder le diagramme de classes.

Section Relations du descripteur de déploiement de beans EJB

Vous avez la possibilité de réorganiser les éléments dans le diagramme de classes de manière à afficher les détails.

Diagramme de classes avec affichage des relations

Exploration d'autres vues

Les vues Structure et Propriétés fournissent des informations utiles sur le diagramme de classes global et sur les propriétés de composants EJB spécifiques.

La vue Structure s'affiche par défaut dans la partie inférieure gauche du plan de travail. Elle vous permet de parcourir un diagramme. Pour ce faire, suivez les étapes suivantes :

  1. Si le diagramme de classes occupe toujours la totalité du cadre du plan de travail, cliquez deux fois sur la barre de titre du diagramme de classes pour le ramener à sa taille normale.
  2. Notez la vue Structure dans le coin inférieur gauche du plan de travail. Le diagramme de classes s'affiche à cet endroit, à petite échelle. Si le diagramme est trop grand pour s'afficher complètement dans la fenêtre d'édition, un rectangle mis en évidence apparaît dans la vue Structure pour indiquer la portion visible du diagramme.
  3. Dans la vue Structure, déplacez le rectangle mis en évidence à l'aide du pointeur de la souris. La section du diagramme de classes qui est visible dans la zone d'édition se déplace pour correspondre à la section mise en évidence de la vue Structure.

Vue Structure d'un diagramme de classes

La vue Propriétés s'affiche par défaut dans la partie inférieure droite du plan de travail. Elle comprend deux onglets, Apparence et Avancées. Vous pouvez modifier les couleurs, les polices et autres propriétés visuelles dans la page Apparence. La page Avancées affiche les propriétés détaillées de l'élément mis en évidence dans le diagramme de classes. Certaines des valeurs de la vue Propriétés sont en lecture seule tandis que d'autres peuvent être modifiées.

Vue Propriétés d'un diagramme de classes

Modification d'attributs à partir du diagramme de classes UML

Maintenant, vous allez modifier certains attributs CMP du bean Author.

Ajout d'un attribut CMP à un bean

  1. Déplacez le curseur de la souris n'importe où sur le bean Author. Une barre de menus apparaît.

  2. Barre de menus
  3. Cliquez sur le symbole de clé principale (Icône de la zone de clé principale) dans la barre de menus pour ajouter des attributs CMP supplémentaires au bean Author. L'assistant des champs CMP s'ouvre.
  4. Ajoutez un champ portant le nom sexe et de type java.lang.Character.
  5. Cliquez sur Valider > Fermer > Fin. Les classes du bean sont mises à jour et l'attribut sexe apparaît dans le compartiment Attribut du bean sur le diagramme de classes.

Attributs CMP du bean Author

Intégration d'un attribut CMP à la clé

  1. Mettez en évidence l'attribut nom du bean Author.
  2. Cliquez à l'aide du bouton droit de la souris, puis sélectionnez Edition > Ajouter à la clé. L'assistant de création d'une classe de clé s'ouvre. Une nouvelle classe de clé est maintenant requise car la clé n'est plus de type primitive Java. Avant cette étape, java.lang.Integer était utilisé comme classe de clé.
  3. Cliquez sur OK pour utiliser les options présélectionnées en vue de créer la nouvelle classe de clé avec le nom de classe de clé par défaut, AuthorKey. L'attribut de nom apparaît dorénavant sur le diagramme de classes avec le symbole de zone de clé principale. La nouvelle classe de clé apparaît dans le répertoire UML EJB tutorialClient > ejbModule > sample
  4. Sélectionnez Ctrl + S pour sauvegarder le diagramme de classes.

Assistant de création d'une classe de clé

Manipulation d'objets dans le diagramme de classes UML

Ensuite, consultez les détails du diagramme de classes. Pour agrandir le diagramme de classes, cliquez deux fois sur sa barre de titre. L'éditeur du diagramme de classes occupe maintenant pratiquement toute la fenêtre du plan de travail (la palette reste développée dans la partie droite).

Réorganisation des composants beans sur le diagramme

  1. Cliquez une fois sur l'un des beans. Des petits carrés noirs apparaissent autour du rectangle du bean pour indiquer qu'il a été sélectionné.
  2. Faites glisser le bean vers un autre emplacement du diagramme de classes, puis relâchez-le. Si les beans Author ou Book sont déplacés, la flèche de relation s'ajuste pour refléter la nouvelle position.

Modification des éléments affichés pour un bean

  1. Dans l'éditeur de diagramme de classes, mettez en évidence le bean Author. Le rectangle représentant le bean est divisé en plusieurs compartiments. Les compartiments par défaut qui s'affichent sont Attribut et Interfaces fournies. Les compartiments sont associés à une icône de masquage (Icône de masquage) qui apparaît dans le coin supérieur gauche.
  2. Cliquez sur l'un des icônes de masquage pour masquer le compartiment correspondant du bean. Le compartiment est réduit et l'icône de masquage est remplacée par l'icône d'affichage (Icône d'affichage).
  3. Cliquez sur l'icône d'affichage pour développer de nouveau le compartiment.
  4. Sélectionnez les compartiments à afficher ou à masquer en cliquant avec le bouton droit de la souris sur le bean et en sélectionnant Filtres > Afficher/Masquer le compartiment.

Beans EJB avec sections masquées et affichées

Ouverture des éditeurs à partir du diagramme

Lorsque vous ouvrez l'éditeur Java de beans d'EJB, la vue Structure apparaît dans le coin inférieur gauche du plan de travail. Vous pouvez apporter des modifications au bean à partir de cette vue. Cliquez à l'aide du bouton droit de la souris sur l'une des méthodes de la vue Structure, puis sélectionnez Bean enterprise. Sélectionnez Promouvoir ou Rétrograder pour promouvoir ou rétrograder la méthode sélectionnée dans ou depuis l'un des types d'interface répertoriés.

Essayez d'ajouter une méthode à la classe au moyen de l'éditeur Java de beans d'EJB. La nouvelle méthode apparaît dans la vue Structure. Si vous promouvez la nouvelle méthode dans une interface, la méthode apparaît sur le diagramme de classes.

Editeur Java de beans d'EJB

Familiarisation avec les décorations associées aux beans

Décoration Signification
Décoration d'un bean entity CMP 2.x Bean entity CMP 2.x
Décoration d'une zone de clé principale Zone de clé principale
Décoration d'un champ CMP Champ CMP (non principal)
Décoration d'une interface locale Interface locale
Décoration d'une interface home locale Interface home locale
Décoration d'une interface éloignée Interface éloignée
Décoration d'une méthode locale Méthode locale
Décoration d'une méthode home locale Méthode home locale
Décoration d'une méthode éloignée Méthode éloignée

Une liste complète des décorations figure dans le guide InfoCenter sous la rubrique Référence de visualisation UML.

Diagrammes de classes UML et interaction avec le code

Lorsque vous apportez des modifications à votre diagramme de classes, des modifications correspondantes sont automatiquement intégrées au code sous-jacent. A l'inverse, si vous modifiez directement le code, le diagramme de classes est modifié automatiquement de façon à refléter ce changement. N'importe quel type de modification effectuée dans le plan de travail entraîne une revalidation automatique et immédiate du code. Pour les applications EJB, la validation inclut l'identification des erreurs de compilation dans les classes Java, des problèmes liés au chemin de classes et des violations des spécifications EJB.

Dans la partie inférieure du plan de travail, plusieurs vues sont empilées, dont la vue Incidents. Cette vue affiche toutes les erreurs, les avertissements et les messages d'information de tous les projets et fichiers du plan de travail. Cliquez deux fois sur l'un des incidents répertoriés pour ouvrir le fichier approprié à l'endroit où s'est produite l'erreur.

Dans la vue Incidents, le nombre d'incidents répertoriés est limité par défaut à 100. Vous pouvez modifier cette limite, ou filtrer la vue pour afficher uniquement les éléments de votre choix. Les options de filtrage englobent le degré de gravité de l'incident, les projets, les ressources et le type d'incident. Pour modifier ces paramètres par défaut, cliquez sur la flèche (Icône de menu déroulant), puis sélectionnez Filtres.

Configuration des préférences des diagrammes de classes UML

Vous pouvez modifier certains comportements par défaut et afficher les caractéristiques des diagrammes de classes. Dans le menu Fenêtre, sélectionnez Préférences. Développez Modélisation pour afficher les éléments qui peuvent être modifiés.

La section principale contient des paramètres globaux, tels que l'affichage ou non des barres de menus lorsque vous maintenez le pointeur de la souris sur une classe du diagramme. La section Apparence englobe plusieurs pages qui vous permettent de modifier des éléments tels que les polices, les couleurs, les connecteurs et les formes. La section EJB fournit des paramètres liés à l'ouverture des diagrammes de classes. D'autres sections comportent des options relatives aux champs Java, aux méthodes, règles et grilles et à la validation.

Parcourez les différentes sections pour vous familiariser avec les différentes options. Une fois les modifications apportées, cliquez sur OK pour les sauvegarder et quitter la page des préférences.

Vous êtes maintenant prêt à commencer l'exercice 1.4 : Mappage de beans entity avec des bases de données relationnelles.

Retour d'informations
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.