P. 1
Chapitre8-EJB

Chapitre8-EJB

|Views: 176|Likes:
Published by managere

More info:

Published by: managere on Dec 13, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

02/22/2011

pdf

text

original

Guide Pratique EDI NetBeans

Copyright © 2005 Sun Microsystems, Inc. All rights reserved.

Table des matières
Assistant type de Projet EJB.............................................................................................................2 Structure Module EJB.......................................................................................................................5 Ajout d'EJB, Fichiers et Bibliothèques à votre Module EJB..............................................................6 Ajout de la Logique Métier à un Enterprise Java Bean.....................................................................9 Méthodes de Bean.......................................................................................................................9 Ajout d'une Simple Méthode Métier................................................................................................12 Descripteurs de Déployement EJB Bean .......................................................................................14

Etendre des Applications Web avec de la Logique Métier: Introduction aux Composants EJB
Pour la plupart des utilisateurs de NetBeans, ainsi que pour les développeurs d'applications Web, le concept d'Enterprise JavaBeans peut être nouveau ou apparemment complexe, comme c'est la première fois que l'EDI NetBeans 4.1 expose les assistants et fonctionnalités nécessaires pour créer facilement des EJB et leur ajouter des méthodes Métiers. Une fois que ces méthodes Métiers sont implémentées (en Java), elles peuvent être appelée sui depuis d'autres EJB, ou depuis des servlettes d'applications Web, ou des classes utilitaires. Les avantages d'encapsuler le code de l'application dans des méthodes métiers d'EJB sont nombreux: [nl] Les Enterprise JavaBeans supporte les transactions, le mécanisme qui gére les accès concurrentiels à des objets partagés. Le paramétrage de Transaction est déclaratif, via les fichiers de descripteur de déployement.

Guide Pratique EDI NetBeans, Extention Applications Web avec Logique Métier: Introduction aux Composants EJB, 1

implémente un service Web. Types d'Enterprise Java Bean Description Session Exécute une tâche pour un client. La méthode lookup passe un nom JNDI comme paramètre et retourne l'objet associé. via JNDI: Java Naming and Directory Interface (JNDI). Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. un module EJB est également un composant J2EE déployable. Enterprise Java Beans accèdent aux ressources externes. services Web. contenant un ensemble de servlettes. Pour donner une analogie avec le concept d'application Web. Voir Tableau 8-1 pour une liste de tous les types d'EJB. 2 . traitant les messages de façon asynchrone.1. pages web. tandis qu'une application Web est un composant J2EE déployable. Pour localiser une ressource JDBC. choisissez le type de projet “Ejb Module” qui est dans la catégorie “Enterprise”. Guide Pratique EDI NetBeans. les mail sessions. [lb] Pour créer un projet EJB Module dans l'EDI NetBeans 4. ou non (accès local et/ou distant) Les méthodes métiers des Enterprise Java Beans peuvent être sécurisés déclarativement. un Enterprise JavaBean invoque la méthode lookup du JNDI. une base de données SQL (mais il existe d'autres possibilités) Entity Message-Driven Agit comme un listener pour un Java Message Service API. contenant un ensemble d'Enterprise Java Beans. sans modification de code source. sur différentes machines. Un Session Bean peut être stateful pour la gestion de la conversation entre le client (l'utilisateur de la logique métier) et le Serveur. comme les bases de données. déclarativement. La première chose à faire pour développer des EJB est de créer un projet EJB Module qui peut contenir un ou plusieurs Enterprise JavaBeans. par exemple. et JSP. JNDI maintient un ensemble d'associations entre un nom et un objet. les message queues. Représente un objet d'entité metier qui existen dans un stockage persistant. JNDI permet aux composants de localiser d'autres composants et ressources.[nl] [nl] [nl] Enterprise Java Beans peuvent être utilisés par plusieurs clients. ou stateless. Typiquement. Assistant type de Projet EJB.

et si oui ou non vous désirez rajouter ce composant J2EE à une application J2EE existante (projet EAR). [lb] Votre projet est créé et visible dans la fenêtre Projects. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB.[lb] Vous pouvez alors spécifier l'emplacement du projet. aussi. Vous pouvez toujours faire cela lorsque vous aurez créé un projet d'Application J2EE. son nom. Il ne contient pas de composant Enterprise JavaBeans. votre première tâche sera d'en rajouter un (voir section suivante) Guide Pratique EDI NetBeans. 3 .

Guide Pratique EDI NetBeans. La section suivante décrit la convention utilisée pour cette structure. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB.[lb] Vous pouvez sélectionner la fenêtre Files pour voir les répertoires et fichiers qui ont été créés sur disque. 4 .

java. Tableau 8-2: Contenu Représentation dans la fenêtre Projects Noeud Enterprise JavaBeans Noeud Source Packages Représentation dans la fenêtre Files Répertoire src/java Répertoire src/java Emplacement dans le Fichier EJB JAR Généré (situé dans le dossier dist) Racine du fichier Package structure for the JAR file N/A Dossier META-INF EJBs Fichiers sources Java. Noeud Test Packages Noeud Configuration Files Répertoire test Répertoire src/conf webservices. src/conf qui contient les descripteurs de déployement J2EE et les descripteurs de déployement spécifiques aux serveurs d'application Le répertoire de setup qui contient les fichiers de ressources spécifiques au serveur Vous pouvez trouver des informations supplémentaires sur ces conventions à l'adresse https://conventions. classes d'aide. fichiers Java EJB.xml. Ce qui suit est une description rapide des éléments structurels du module EJB généré: [lb] [lb] [lb] Le dossier src/java qui contient tous les fichiers sources Java dans l'application.net/ Voir le Tableau 8-2 pour des informations sur comment les nombreux éléments sources d'un Module EJB correspondent avec leur représentation dans l'EDI et où ils finissent dans le composant déployé.xml. Lorsque vous créez un projet dans l'EDI.Structure Module EJB Les J2EE Blueprints fournissent des guidelines sur la façon de structurer vos applications J2EE et modules EJB pour s'assurer qu'ils fonctionnent proprement avec les différents serveurs d'application. etc.xml.xml) Fichier de configuration du contexte et Descripteurs de déployement serveurs d'Application (sunrépertoire src/conf Dossier META-INF ejb-jar. cette convention de structure J2EE Blueprints est respectée. 5 .dev. suncmp-mapping. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. Tests unitaires Descripteurs de déployement (ejbjar. others) Guide Pratique EDI NetBeans.

Fichiers et Bibliothèques à votre Module EJB Une fois que vous avez créé un projet de module EJB via l'assistant New Project. Un assistant apparait pour le modèle vous permettant de définir le nom et d'autres caractéristiques du fichier. nbproject box.) Configuration Files (visible répertoitre Setup lorsque des ressources J2EE existent) Web services libraries Noeud Web services Noeud Libraries src area (Java code) Répertoire Location of the libraries Test classpath entries project metadata including build script noeud Test Libraries répertoire test Project Properties dialog build. [lb] Choisissez le modèle “Session Bean”: Guide Pratique EDI NetBeans. N/A N/A Ressources ou scripts spécifiques au serveur d'application (SQL. which you can open by folder right-clicking the project's node and choosing Properties. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB..xml file. Ajout d'EJB. La façon la plus directe de créer des fichiers est d'ouvrir la fenêtre Projects et de cliquezdroit sur le noeud où vous désirez placer le fichier et choisir New et ensuite un modèle depuis le sous-menu. Les ressources dans ce dossier sont enregistrés automatiquement au moment du déployement pour le Serveur d'Application de Sun. 6 . Fichiers Jar inclus dans le jar du module EJB. à la racine.Contenu Représentation dans la fenêtre Projects Représentation dans la fenêtre Files Emplacement dans le Fichier EJB JAR Généré (situé dans le dossier dist) N/A.. vous pouvez commencer à y mettre des nouveaux EJBs et des classes “helper” Java.class files) Contenu principal pour le fichier d'archive du module EJB. Pas visible dans la fenêtre Projects Build et build/generated Ejb Module build area (*..

7 .[lb] L'assistant va créer un Session Bean et l'ajoutera au module EJB. Vous pouvez spécifier le nom du Bean. Vous pouvez accepter les valeurs par défaut pour créer un Session Bean de type Stateless et local: Guide Pratique EDI NetBeans. et non de choisir le paquetage sans nom.) Vous pouvez spécifier si ce Session Bean aura une interface locale et/ou distante (local est le défaut). Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. le paquetage (assurez-vous que vous choisissez ou créer un paquetage ici. et si le Bean est un Session Bean de type “Stateful”.

java) La vue logique du projet cache la complexité de ces EJB en n'exposant qu'un seul noeud qui expose quelques méthodes importantes pour le bean.java) L'interface local home (XXXLocalHome. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB.java) L'interface métier (XXXLocalBusiness. sous le noeud “Enterprise JavaBeans”. 8 . Ce composant EJB est un ensemble de fichiers Java(4 pour un simple Session Bean): L'interface local (XXXlocal.java) L'implémentation du Bean en lui-même (XXXBean. comme les méthodes locales: [nl] [nl] [nl] [nl] [lb] Guide Pratique EDI NetBeans.[lb] Notez la nouvelle vue logique dans la fenêtre Projects.

avec la signature correcte): Guide Pratique EDI NetBeans. ainsi que des entrées dans certains fichiers de descripteur de déployement..Conseil EDI NetBeans “Où sont mes Fichiers Java?” La vue logique cache les fichiers Java par défaut. Souvenez-vous que NetBeans offre les assistants nécessaires qui vont grandement simplifier le travail d'encodage de la logique métier dans les Enterprise JavaBeans. 9 . Méthodes de Bean Une application J2EE réalise son travail via des méthodes que le client appele sur un Bean. Souvenez-vous qu'un Enterprise JavaBeans est un ensemble de fichiers Java. Mais vous pouvez voir la structure entière du paquetage et toutes les classes de l'EJB sous le noeud “Source Packages”. vous apprendrez les différentes types de méthodes que vous pouvez ajouter à un Enterprise JavaBean. NetBeans va garder tous ces fichiers automatiquement synchronisés lorsque vous interagissez avec la vue logique. mise à jour des interfaces local et distant. ou peut être rajouté via les actions du menu contextuel dans la vue project local de la fenêtre de l'Éditeur Java pour une classe d'implémentation d'un EJB. La liste suivante de types de méthodes sont soit générées automatiquement via l'assistant avec l'implémentation par défaut. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. La génération supplémentaire nécessaire est prise en charge par l'EDI (c'est-à-dire. Ajout de la Logique Métier à un Enterprise Java Bean Dans cette section.

Guide Pratique EDI NetBeans. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. 10 .

Dépendant du type de Bean. Les méthodes métiers sont les méthodes les plus importantes pour un EJB. activez le menu contextuel et choisissez le menu “Enterprise Resources” et le sous-menu Call EJB . Le containeur appele certaines méthodes pour gérer le cycle de vie d'un Enterprise Java Bean.[nl] Méthodes Métiers. Depuis l'Éditeur Java de la Servlette ou d'un autre EJB. L'EDI ne génère pas de déclarations de méthode métier par défaut. local ou les deux (distant et local). Le Guide Pratique EDI NetBeans. l'EDI place les déclarations de méthodes correspondantes dans la classe du Bean et dans les interfaces distant. TIP Méthodes Cycle de Vie. Un assistant spécial NetBeans est disponible pour simplier le codage d'appel d'une méthode métier d'un EJB. Le développeur ajoute explicitement des méthodes métiers au Bean. lorsque le développeur spécifie une méthode métier. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. 11 . Ce sont celles qui sont appelées par d'autres EJB ou des composants de la couche Web comme des JSP ou des Servlets. Cependant. le containeur travaille via les méthodes de façon légèrement différente. Un client appele des méthodes métiers d'un Bean via l'interface distant du Bean (ou l'interface local si c'est applicable).

Un Entity Bean peut avoir autant de méthodes home. une méthode de sélection peut interroger un Entity Bean situé dans le même module EJB et retourner des valeurs depuis ses champs persistants. en utilisant les arguments de la méthode create. Les méthodes de recherche qui sont rajoutée aux CMP Entity Beans incluent des instructions d'EJB Query Language (EJB QL). Un Entity Bean peut utiliser une méthode home pour une opération légère qui ne requiert pas l'accès à une instance particulière du bean. Un Entity Bean qui délègue sa persistence au containeur est appelé un Container-Managed Persistent Entity Bean. dans la classe du Bean. Le client passe par l'interface home pour trouver une instance d'un Entity Bean par sa clef primaire. et leur type. Un client envoye un message via une destination Java Message Service (JMS) pour appeler un méthode onMessage sur un message-driven bean. [nl] Méthodes de Recherche. l'EDI place automatiquement les déclarations de méthodes correspondantes dans l'interface local home (et home) et. ou BMP Entity Bean). ainsi que les possibles exceptions qui pourraient être rejetées par cette méthode métier. 12 . Extention Applications Web avec Logique Métier: Introduction aux Composants EJB.développeur a la possibilité de spécifier des paramètres pour quelques unes de ces méthodes. Ajout d'une Simple Méthode Métier [lb] Choisissez le menu contextuel “Add Business Method” soit depuis le noeud logique ou depuis l'Éditeur Java pour un code d'implémentation d'un Bean. L'EDI génère automatiquement les déclarations de méthodes de cycle de vie appropriées pour chacun des types de bean et les place dans la classe du Bean. Introduisez un nom de méthode. pour les BMP Entity Beans. ou un CMP Entity Bean. une méthode métier requiert un accès à une instance particulière. Le containeur initialise l'instance de l'Enterprise Bean. que le plugin du serveur d'application du bean convertit automatiquement en une sorte de code SQL que le serveur a besoin. et l'interface home ou local home du bean. une liste de paramètres. [nl] Méthodes de Sélection. Si le développeur ajoute une autre méthode de recherche. De plus. [nl] Méthodes OnMessage. un “Bean-Managed Persistent Entity Bean”. Les méthodes de sélections ne sont pas exposées dans les interfaces de type distant et ne peuvent être invoquées par un client. Comme une méthode de recherche. Un CMP Entity Bean peut utiliser une méthode select. (Par contraste. une méthode de sélection peut intérroger la base de données et retourner une interface locale ou distante ou une collection. NetBeans génère automatiquement une déclaration de méthode findByPrimaryKey dans l'interface local home de chaque Entity Bean (et dans l'interface home du Bean. [nl] Méthodes Home.) Le développeur ajoute explicitement une méthode home. [nl] Méthodes de Création. Guide Pratique EDI NetBeans. et l'EDI génère la déclaration de méthode correspondante dans la classe du bean. L'EDI place également une déclaration de méthode ejbFindByPrimaryKey correspondante dans la classe de Bean de chaque Entity Bean qui gère sa propre persistence (c'est à dire. s'il en a une). Le développeur peut également rajouter d'autres méthodes de recherche.

[lb] Notez le changement dans le fichier Java implémentant le Bean. Guide Pratique EDI NetBeans. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. 13 . il contient maintenant le corps de la nouvelles méthode métier et vous pouvez maintenant utiliser les capacités de l'éditeur Java de l'EDI pour terminer l'implémentation de la méthode.

Ce but est atteint avec le concept de configuration zéro implémenté dans l'EDI: lorsque le développeur utilise l'assistant fournit comme “Call EJB”. ou “Use Database”. l'EDI effectue les tâches suivantes: Guide Pratique EDI NetBeans. 14 . Descripteurs de Déployement EJB Bean L'un des buts de l'EDI NetBeans est de cacher autant que possible les fichiers Descripteurs de Déployement au développeur. choisissez le menu“Build” de votre projet pour lancer la compilation des fichiers Java et la création des archives EJB (dans le répertoire “dist”). ou “Call Web service operation”. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. ou “Call Message”.[lb] Lorsque vous avez fini de coder la méthode.

L'Éditeur Visuel pour le fichier Descripteur de Déployement est activé en double-cliquant sur le noeud du fichier DD dans la fenêtre Projects. Si le Projet J2EE utilise un Service Locator Object (se référer à l'assistant Server Location). le développeur a également la possibilité d'éditer ces Descripteurs de Déployement et ici aussi. ainsi que Édition Visuelle). 15 . Une liste déroulante permet également de sauter directement dans une section particulière dans le fichier de DD. Le packaging qui en résulte doit utiliser le type de Projet J2EE Application pour s'assurer que tous les modules J2EE soient correctement assemblée dans l'Archive d'Application J2EE (EAR) avant le déployement. Bien sûr. Met à Jour le fichier de descripteur de déployement J2EE en rajoutant des éléments EJB-REF ou RESOURCE-REF correspondants. si l'appel est cross-projects. NetBeans offre une facilité d'utilisation grâce à l'édition bidirectionnel (Éditeur XML avec completion de Code et validation en ligne. Guide Pratique EDI NetBeans. les vues Overview ou XML sont possibles. Un ensemble de vues sont disponibles: par exemple. Modifie le projet J2EE pour rajouter les dépendances de Projets nécessaires. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. pour un module J2EE EJB.[nl] [nl] [nl] [lb] [lb] Génère le bout de code Java pour le lookup JNDI dans le fichier appelant.

sélectionnez le bouton XML situé en haut de l'Éditeur Visuel: Guide Pratique EDI NetBeans. 16 .[lb] Pour vous rendre dans la vue XML du fichier. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB.

[lb] Ci-dessus. Notez la barre d'outils dans cet éditeur. Extention Applications Web avec Logique Métier: Introduction aux Composants EJB. La dernière icône active l'action de validation XML. 17 . pour qu'un développeur puisse vérifier la conformité du fichier de descripteur de déployement par rapport au DTD ou au Schéma. affichant la possibilité de completion de code. l'éditeur XML. Guide Pratique EDI NetBeans.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->